私はGridLayout
を持っています。これは各セルにLinearLayout
を含んでいます。今度は、linearlayouts
の中にあるimageViews
を、コード内で異なる画像を持つように変更し、XML
に変更して、動的に変更します。私はこれをする方法を知らない。別のレイアウトでImageViewを編集
私はこれを行う場合:
public class Testextends AppCompatActivity
{
ImageView item0,item1,item2,item3,item4,item5,item6,item7,item8,item9;
TextView itemDesc0, itemDesc1;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.inventorylayout);
item0 = (ImageView)findViewById(R.id.imageViewItem);
itemDesc0 = (TextView)findViewById(R.id.itemDesc);
item0.setImageResource(R.drawable.test);
itemDesc0.setText("test1");
item1 = (ImageView)findViewById(R.id.item01);
itemDesc1 = (TextView)findViewById(R.id.itemDesc);
item1.setImageResource(R.drawable.test);
itemDesc1.setText("test2");
}
}
を私はここで他の9
がmainLayout
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnCount="3"
android:rowCount="3"
android:gravity="center"
android:useDefaultMargins="true"
android:layout_gravity="center_horizontal">
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item01"
android:layout_row="0"
android:layout_column="0" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item02"
android:layout_row="0"
android:layout_column="1" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item03"
android:layout_row="0"
android:layout_column="2" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item01"
android:layout_row="1"
android:layout_column="0" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item02"
android:layout_row="1"
android:layout_column="1" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item03"
android:layout_row="1"
android:layout_column="2" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item01"
android:layout_row="2"
android:layout_column="0" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item02"
android:layout_row="2"
android:layout_column="1" />
<include layout="@layout/itemlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/item03"
android:layout_row="2"
android:layout_column="2" />
</GridLayout>
</LinearLayout>
であり、ここでitemLayoutである第一の画像を変更することができず、
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageViewInvBack"
android:background="@mipmap/invplaceback"
android:layout_gravity="center" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageViewItem"
android:layout_alignTop="@id/imageViewInvBack"
android:layout_alignBottom="@id/imageViewInvBack"
android:layout_alignLeft="@id/imageViewInvBack"
android:layout_alignRight="@id/imageViewInvBack"
android:layout_gravity="center_horizontal" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test"
android:id="@+id/itemDesc"
android:gravity="center_vertical|center_horizontal"
android:layout_gravity="center"
android:layout_below="@+id/imageViewInvBack"
android:layout_alignParentStart="true"
android:layout_marginStart="28dp" />
アダプタのgetView機能 –