Ответ 1
Просто добавьте OnClickListener в свой RelativeLayout
У меня есть RelativeLayout
с несколькими TextView
как дети
<RelativeLayout
android:id="@+id/shift_parent_name"
android:layout_width="fill_parent"
android:layout_weight="0.25"
>
<TextView
android:id="@+id/shift_parent_nametitle"
android:text="@string/shift_parent_nametitle"
style="@style/header_text"
/>
<TextView
android:id="@+id/shift_parent_namefield"
android:layout_alignParentRight="true"
android:layout_below="@id/shift_parent_nametitle"
style="@style/wrap"
/>
Как мне использовать кнопку RelativeLayout
в качестве кнопки для реагирования на событие клика, если какая-либо часть области нажата?
Просто добавьте OnClickListener в свой RelativeLayout
У меня есть RelativeLayout, называемый RelativeMain1. Вот как я запускаю Activity
RelativeLayout relativeclic1 =(RelativeLayout)findViewById(R.id.RelativeMain1);
relativeclic1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
startActivityForResult(new Intent(A_My_Galaxy.this,C_Student_Book_Planet.class), 0);
}
});
После того, как вы добавите onClickListener в свой макет, он должен работать.
Добавить "OnClickListener" в ваш RelativeLayout.
Примечание. Не забудьте добавить android:clickable="true"
в RelativeLayout.
RelativeLayout
идентификатор, например, вы набрали shift_parent_name
Установите XML RelativeLayout
в android:clickable="true"
Ваш последний xml будет выглядеть следующим образом:
<RelativeLayout
android:id="@+id/shift_parent_name"
android:layout_width="fill_parent"
android:layout_weight="0.25"
android:clickable="true">
затем добавьте код в свой метод onCreate:
RelativeLayout relative1 = (RelativeLayout) findViewById(R.id.shift_parent_name);
relative1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
startActivity(new Intent(Main.this, About.class) );
}
});
Обязательно измените имена своей деятельности, Main.this
и About.class
.
Основное действие, называемое Main.java
, а второе - About.java
RelativeLayout rl=(RelativeLayout)findViewById(R.id.RelativeMain1);
relativeclic1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
}
});
Вы можете просто добавить этот android:onClick="onClick"