2010-12-06 11 views
1

私は、テキストビュー、いくつかの画像などを持つアンドロイドでカスタムコントロールを持っています。コントロール全体をアンドロイドでクリック可能にするにはどうすればよいですか?

私はコントロール全体をクリック可能にしたいと思います。

私はレイアウトを宣言:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:clickable="true" android:layout_width="fill_parent" android:layout_height="50px" android:layout_gravity="center_vertical"> 

それはアンドロイドを持っているにもかかわらず:クリック可能な属性がtrueに設定され、クリックイベントが発火することはありません。

私は何か間違っていますか?自分のメインアクティビティコードで

答えて

3

は、また、あなたがあなたの相対的なレイアウトで属性をこの

public class TestActivity extends Activity implements 
    OnTouchListener, OnLongClickListener, OnKeyListener, 
    OnClickListener, OnFocusChangeListener{ 

CustomUI = (CustomView) findViewById(R.id.custom_ui); 

    CustomUI.addListener(this); 
    CustomUI.setOnClickListener(this); 
    CustomUI.setOnFocusChangeListener(this); 
    CustomUI.setOnLongClickListener(this); 
    CustomUI.setOnTouchListener(this); 
    CustomUI.setOnKeyListener(this); 

}

のようなものを置くことができないでください、あなたはそれをこのレイアウトをカスタムUIを含める必要があります。.. 〜のようなもの

<RelativeLayout 

    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 

<com.company.some.CustomView 

     android:id="@+id/custom_ui" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:clickable="true" 
     /> 

    </RelativeLayout>