我正在使用LayoutInflater
我想要的这个视图多次(动态地)膨胀一个xml。
我的ònCreate`方法如下:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home);
v[i]= new View[4];
LinearLayout linear= (LinearLayout) findViewById(R.id.linearLayout);
LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
for(int i = 1; i <4; i++) {
v[i]= inflater.inflate(R.layout.row, linear); //v[i] returns view i.e. Linear Layout from my row.xml
}
}
我的 row.xml 代码如下 -
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ffaf04"
android:orientation="horizontal"
android:padding="10dip" >
<LinearLayout
android:id="@+id/rel1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:background="#ffffff"
android:orientation="vertical"
android:padding="5dp" >
<ImageView
android:id="@+id/imageView1inInflatedRow"
android:layout_width="130dp"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/image_holder" >
</ImageView>
<Button
android:id="@+id/button1inInflatedRow"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="5dp"
android:background="@layout/button_selector"
android:padding="5dip"
android:textColor="#FFFFFF"
android:textSize="12sp" >
</Button>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:background="#ffffff"
android:orientation="vertical"
android:padding="5dp" >
<ImageView
android:id="@+id/imageView2inInflatedRow"
android:layout_width="130dp"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/image_holder" >
</ImageView>
<Button
android:id="@+id/button2inInflatedRow"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="5dp"
android:background="@layout/button_selector"
android:padding="5dip"
android:textColor="#FFFFFF"
android:textSize="12sp" >
</Button>
</LinearLayout>
</LinearLayout>
现在该行包含按钮,我想为按钮设置一个 onclick 侦听器,即 forbutton1inInflatedRow
和 button2inInflatedRow
hich 执行相同的功能,但我需要知道哪个按钮调用了该功能。那么,我该如何调用findVieById()
这些按钮呢?还是有其他方法可以调用按钮onclick
..?