我有一项活动,其中只包含棕色背景的相对布局, 如果用户点击屏幕上的任何地方,我想开始另一项活动,我该怎么做?
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.mainscreen);
}
答案 0 :(得分:2)
首先,在您的布局文件中添加RelativeLayout
,为您的android:id="@+id/relativeLayout"
提供ID。
RelativeLayout l = (RelativeLayout) findViewById(R.id.relativeLayout1);
l.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
// startActivity here
}
});
或不使用RelativeLayout
,只需实施onTouchEvent(MotionEvent)
活动
public boolean onTouchEvent(MotionEvent event)
{
if(event.getAction() == MotionEvent.ACTION_UP)
{
// start activity
}
return super.onTouchEvent(event);
}
注意:尚未尝试此代码。
答案 1 :(得分:1)
将onClick属性添加到布局xml中,并在活动中实现onClick方法以启动新活动。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClick"
android:orientation="vertical" >
在您的活动中添加onClick方法。
public void OnClick(View v) {
startActivity(new Intent(this,MyNewActivity.class));
}
答案 2 :(得分:1)
我认为您的主屏幕具有线性,相对,帧的父布局。参考它并处理点击监听器。
例: 如果您的父布局是线性的。
LinearLayout linear=(LinearLayout)findViewById(R.id.linear);
linear.setOnClickListener(this);