Android - 按下标签时隐藏RelativeLayout

时间:2012-04-17 15:54:12

标签: android android-tabhost data-hiding

我有一个带有2个标签,详细信息和附件的tabHost。我想要做的是,当我按下附件选项卡时,我想隐藏RelativeLayout中的信息。我知道我必须setVisibility(View.VISIBLE)但是如何将此方法与该选项卡相关联?

我有这个代码来创建我的标签:

intent = new Intent();
    intent.putExtras(bundle);
    spec = tabHost.newTabSpec("Attachments")
             .setIndicator("Attachments")  
                .setContent(intent
                  .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
    tabHost.addTab(spec);   

有人可以帮我吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以按广播意图发送消息。

  1. 在您的活动上设置接收消息的广播接收器
  2. 在需要时发送广播意图。
  3. 以下是代码段。

    @Override
    protected void onResume() {
      super.onResume();
      if( listener != null) {
        registerReceiver(listener, new  IntentFilter( "hide_me"));
      }
    }
    
    @Override
    protected void onPause() {
      super.onPause();
      if( listener != null) {
        unregisterReceiver(listener);
      }
    }
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      listener = new BroadcastReceiver() { //put your code here 
      }
    }
    

    并发送如下信息:

    Intent i = new Intent();
    i.setAction("hide_me");
    sendBroadcast(i);