Android setlayout visibilité sur le bouton cliquez sur
Dans le code suivant sur cliquez sur le bouton je veux cacher la relative mise en page rl1
et de montrer rl2
mais mon application se bloque vers le bas après un clic sur le bouton.Ce que je fais mal
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<RelativeLayout
android:id="@+id/rl1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/welcome_1">
<ImageView
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:paddingTop="360dp"
android:layout_marginRight="4dp"
android:src="@drawable/button1" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="invisible"
android:background="@drawable/menu_2"
></RelativeLayout>
</RelativeLayout>
Code Java
public class mockupsActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//ImageButton img1 = (ImageButton)findViewById(R.id.button1);
ImageView img1 =(ImageView)findViewById(R.id.button1);
img1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//your code here
// Toast.makeText(TouchpointmockupsActivity.this, "test", Toast.LENGTH_SHORT).show();
LinearLayout rl1 = (LinearLayout) findViewById(R.id.rl1);
rl1.setVisibility(View.INVISIBLE);
LinearLayout rl2 = (LinearLayout) findViewById(R.id.rl2);
rl2.setVisibility(View.VISIBLE);
}
});
}
}
- Vous devriez lire votre logcat, il vous dira ce que vous avez fait de mal. Ou au moins poster, afin que d'autres puissent voir la stacktrace. 🙂
Vous devez vous connecter pour publier un commentaire.
Changement
LinearLayout
àRelativeLayout
dans votre code. Vous avez peut-être une classcastException.Edit:
Changement de méthode OnClick comme ci-dessous