이 버튼 중 하나를 클릭하면 내가 만든 imageView 위에 레이어가 나타나야합니다.
public void onClick(View v) {
switch(v.getId()){
case R.id.categoriaA1:
// add layer a1
break;
case R.id.categoriaA2:
// add layer a2
break;
case R.id.categoriaA3:
//add layer A3
break;
case R.id.categoriaA4:
// add layer A4
break;
myAvatar는 내 ImageView입니다. 누군가 나를 도울 수 있습니까?
이것은 내 XML 코드입니다 (4 카테고리에 20 개의 imageButton이 있습니다)
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="1"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.settingavatar.MyAvatar" >
<!-- problemi con il dimensionamento -->
<ImageView
android:id="@+id/anteprimaAvatar"
android:layout_width="282dp"
android:layout_height="150dp"
android:background="@drawable/btn_background"/>
<!-- griglia che contiene le 4 categorie per i vari oggetti che si possono aggiungere all'avatar -->
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/anteprimaAvatar"
android:orientation="vertical" >
<!-- sottogriglia per la categoria A -->
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/categoriaA1"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/cata1"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaA2"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/cata2"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaA3"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/cata3"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaA4"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/cata4"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaA5"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:tag="accessorio" />
</GridLayout>
<!-- sottogriglia per la categoria B -->
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/categoriaB1"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catb1"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaB2"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catb2"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaB3"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catb3"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaB4"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catb4"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaB5"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:tag="accessorio" />
</GridLayout>
<!-- sottogriglia per la categoria C -->
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/categoriaC1"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catc1"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaC2"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catc2"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaC3"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catc3"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaC4"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catc4"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaC5"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:tag="accessorio" />
</GridLayout>
<!-- sottogriglia per la categoria D -->
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/categoriaD1"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catd1"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaD2"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catd2"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaD3"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catd3"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaD4"
android:layout_width="34dp"
android:layout_height="34dp"
android:background="@drawable/catd4"
android:tag="accessorio" />
<ImageButton
android:id="@+id/categoriaD5"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:tag="accessorio" />
</GridLayout>
</GridLayout>
레이아웃에 가시성 작업 사용
예를 들어
LinearLayout lly1 = (LinearLayout)findViewById(R.id.lly1);
LinearLayout lly2 = (LinearLayout)findViewById(R.id.lly1);
LinearLayout lly3 = (LinearLayout)findViewById(R.id.lly1);
LinearLayout lly4 = (LinearLayout)findViewById(R.id.lly1);
public void onClick(View v) {
switch(v.getId()){
case R.id.categoriaA1:
// add layer a1
lly1.setVisibility(v.VISIBLE);
lly2.setVisibility(v.GONE);
lly3.setVisibility(v.GONE);
lly4.setVisibility(v.GONE);
break;
case R.id.categoriaA2:
// add layer a2
lly2.setVisibility(v.VISIBLE);
lly1.setVisibility(v.GONE);
lly3.setVisibility(v.GONE);
lly4.setVisibility(v.GONE);
break;
case R.id.categoriaA3:
//add layer A3
lly3.setVisibility(v.VISIBLE);
lly2.setVisibility(v.GONE);
lly1.setVisibility(v.GONE);
lly4.setVisibility(v.GONE);
break;
case R.id.categoriaA4:
// add layer A4
lly4.setVisibility(v.VISIBLE);
lly2.setVisibility(v.GONE);
lly3.setVisibility(v.GONE);
lly1.setVisibility(v.GONE);
break;
}
레이아웃 activity_main.xml에 오는 곳
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/lly1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="visible" >
</LinearLayout>
<LinearLayout
android:id="@+id/lly2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone" >
</LinearLayout>
<LinearLayout
android:id="@+id/lly3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone" >
</LinearLayout>
<LinearLayout
android:id="@+id/lly4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone" >
</LinearLayout>
</RelativeLayout>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다