2012-01-26 9 views
1

ボタン付きのタイトルバーを作成するときは、すべてのアクティビティで共通です。 tabactivitiesで作成されたタイトルバー。すべてのサブアクティビティのボタンにはどのように到達できますか?サブアクティビティのタイトルバーにあるボタン

public class tabActivity extends TabActivity implements OnClickListener{ 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    c = this; 
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 

    setContentView(R.layout.tabactivity); 

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title); 

    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Settings", 
      res.getDrawable(R.drawable.preferences)).setContent(
        new Intent(this, Settings.class))); 

    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("About", 
      res.getDrawable(R.drawable.newspaper)).setContent(
        new Intent(this, About.class))); 

これは私が私のタブを初期化するのはここで、ボタンとカスタムタイトル..

そして、このクラスでは、私は、カスタムタイトルのボタンに到達したいと思います。:

public class About extends Activity 
{ 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.about); 

    ImageView imag = (ImageView) findViewById(R.id.Position); 
    imag.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      System.out.println("heeey"); 
     } 
    }); 

} 

リスナーは機能しませんか?

Hooowはこれが可能ですか?

答えて

1
public class tabActivity extends TabActivity{ 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    c = this; 
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 

    setContentView(R.layout.tabactivity); 

    ImageView imag = (ImageView) findViewById(R.id.Position);   
    imag.setOnClickListener(new OnClickListener() {   

    public void onClick(View v) {   
     tabActivity.listener.onClick(v); 
    }   

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title); 

    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Settings", 
     res.getDrawable(R.drawable.preferences)).setContent( 
       new Intent(this, Settings.class))); 

    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("About", 
     res.getDrawable(R.drawable.newspaper)).setContent( 
       new Intent(this, About.class))); 
} 

public static void setListner(OnClickListener listener) 
{ 
    tabActivity.listner = listener; 
} 

主な活動は、実装のEventListener

public class About extends Activity implements OnClickListener 
{  
    @Override  
    public void onCreate(Bundle savedInstanceState)  
    {  
     super.onCreate(savedInstanceState);  

     setContentView(R.layout.about);  

    });   

    public void onResume() 
    { 
     tabActivity.setListener(this); 
    } 


}  

コードは次のようになりません。説明するのが難しい

0

目的は何ですか?イベント制御はメインアクティビティで利用できます。

+0

他のアクティビティでリスナー機能を使用したいと思います。 – Jacksons

+0

onTabChangedを呼び出すときに各アクティビティをリスナーとして設定することをお勧めします。各アクティビティーごとに他のアクションを実行することが可能になります。 – lulumeya

+0

私のサブアクティビティでリスナーが必要です。それは可能ですか?私はtabActivityでそれらを聞くことができることを知っています。 – Jacksons

関連する問題