lor*_*ess 4 xml android view onclick
嗨我试图获取ID我设置在每个这些线性布局,但我得到了
android.widget.LinearLayout@41032a40或类似的对我来说没什么用处.
我已将id设置为row1,这就是我想要返回的内容.
我确定我以前做过类似的事情,所以我无法弄清楚为什么它会返回上面的内容.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/row1"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@android:color/black"
android:onClick="xmlClickHandler" />
<LinearLayout
android:id="@+id/row2"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@android:color/white"
android:onClick="xmlClickHandler" />
<LinearLayout
android:id="@+id/row3"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@android:color/black"
android:onClick="xmlClickHandler" />
<LinearLayout
android:id="@+id/row4"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@color/white"
android:onClick="xmlClickHandler" />
<LinearLayout
android:id="@+id/row5"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@color/yellow"
android:onClick="xmlClickHandler" />
<LinearLayout
android:id="@+id/row6"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@color/blue"
android:onClick="xmlClickHandler" />
Run Code Online (Sandbox Code Playgroud)
public void xmlClickHandler(View v) {
Log.d("CLICK ROW", String.valueOf(v));
}
Run Code Online (Sandbox Code Playgroud)
Nar*_*ngh 14
可以使用v.getID()检查视图ID
你可以简单地检查一下
if(v.getId()==R.id.row1)
Run Code Online (Sandbox Code Playgroud)
并相应地执行您想要的任务.
小智 9
你可以这样做:
public void xmlClickHandler(View v) {
String viewID = getResources().getResourceName(v.getId());
}
Run Code Online (Sandbox Code Playgroud)
而且你必须解析结果字符串.
归档时间: |
|
查看次数: |
13230 次 |
最近记录: |