2016-05-15 16 views
0

以下是我的布局和我的java代码。 正如你所看到的,我给了PercentRelativeLayout一个ID为categori1。 我指定onClick处理程序为filtre_kategori_ac_kapat。 问题是,当我尝试记录视图ID时,我得到的数字不是categori1。但是,如果我给布局一个标签,然后尝试记录标签值是正确的!不能得到PercentRelativeLayout签署ID onClick

<android.support.percent.PercentRelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/categori_height" 
    android:background="@drawable/combo" 
    android:gravity="center_vertical" 
    android:layout_marginTop="1dp" 
    android:id="@+id/categori1" 
    android:onClick="filtre_kategori_ac_kapat" 
    > 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     app:layout_heightPercent="60%" 
     app:layout_marginLeftPercent="5%" 
     android:text="@string/filtre_sehir" 
     android:gravity="center_vertical" 
     android:textColor="@color/acik" 
     android:textSize="@dimen/text_size" /> 
    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     app:layout_heightPercent="60%" 
     app:layout_widthPercent="10%" 
     android:layout_alignParentRight="true" 
     app:layout_marginRightPercent="5%" 
     android:src="@drawable/categori_ok_kapali" 
     android:id="@+id/categori1ok" /> 
</android.support.percent.PercentRelativeLayout> 

以下是我用来追踪它的id的函数。

public void filtre_kategori_ac_kapat(View v) { 
    Log.e("traced id",String.valueOf(v.getId())); 
} 

我得到的结果是traced id: 2131492994

回答

0

这是categori1R.java

某处值在您R档,你会发现:

public static final class id { 
    ... 
    public static final int categori1 = 0x7f0c0082; 

如果选中

v.getId() == R.id.categori1

应该是真的。

+0

感谢您的回答,但是当我在if block中比较它时,它返回false,我试着记录id的值 –

+1

'R.java'中'categori1'的值是什么? –

+0

public static final int categori1 = 0x7f0c0082; –