2012-10-24 79 views
0

嗯,我有一個包含什麼,但與棕色背景, 相對佈局的活動,我想,如果用戶點擊屏幕上的任何地方開始另一個活動,我如何做到這一點?我想被點擊時,它開始另一個活動?

@Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.mainscreen); 
    } 

回答

2

首先,通過把android:id="@+id/relativeLayout"在佈局文件,然後給ID您RelativeLayout

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

添加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)); 
} 
1

我覺得你的主屏幕有父親佈局線性,相對,框架。利用這一參考和處理點擊收聽。

例如: 如果您的父級佈局是線性的。

LinearLayout linear=(LinearLayout)findViewById(R.id.linear); 

linear.setOnClickListener(this); 
相關問題