问题使用tab-host android?

问题描述:

伙计们,我正面临与Tab-host不同的问题,我会以清晰的步骤解释。问题使用tab-host android?

1.我用6个选项卡显示标签主机。

2.在第六个选项卡上点击,我显示弹出窗口,其中包含Buttons.Until在这里,每件事情都对我很好。

3.当弹出按钮被点击。我需要显示另一个活动,但是标签主机应该位于每个屏幕的底部?

用于显示标签主机&弹出我使用下面的代码。

私人无效setuptabs(){

// Adding the tabs to TabHost. 
    addTab("Balances", R.drawable.tab_search, BalancesActivity.class); 
    addTab("Orders", R.drawable.tab_search, OrdersActivity.class); 
    addTab("positions", R.drawable.tab_search, PositionsActivity.class); 
    addTab("Trade", R.drawable.tab_search, TradeActivity.class); 
    addTab("WatchList", R.drawable.tab_search, WatchlistActivity.class); 
    addTab("Chains", R.drawable.tab_search, ChainsActivity.class); 
    addTab("More", R.drawable.tab_search, MoreActivity.class); 



    tabHost.getTabWidget().getChildAt(6).setOnTouchListener(new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      QuickActionView qa = QuickActionView.Builder(v); 

      // set the adapter 
      qa.setAdapter(new CustomAdapter(getApplicationContext())); 

      // set the number of columns (setting -1 for auto) 
      qa.setNumColumns(1); 
      qa.setOnClickListener(new DialogInterface.OnClickListener() { 
       @Override 
       public void onClick(DialogInterface dialog, int which) { 
        dialog.dismiss(); 
        Toast.makeText(getBaseContext(), "Selected item: " + which,Toast.LENGTH_SHORT).show(); 
        switch (which) { 
        case 0: 

         break; 
        case 1: 
         break; 

        default: 
         break; 
        } 
       } 
      }); 

      // finally show the view 
      qa.show(); 
      return false; 
     } 
    }); 
} 



private void addTab(String labelId, int drawableId, Class<?> c) { 

    tabHost = getTabHost(); 
    intent = new Intent(this, c); 
    spec = tabHost.newTabSpec("tab" + labelId); 

    View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false); 
    // txtTitle will set the title in TabHost. 
    txtTitle = (TextView) tabIndicator.findViewById(R.id.txtTitles); 
    txtTitle.setText(labelId); 
    // imgTab will set the image in TabHost. 
    imgTab = (ImageView) tabIndicator.findViewById(R.id.imgTab); 
    imgTab.setImageResource(drawableId); 

    spec.setIndicator(tabIndicator); 
    spec.setContent(intent); 
    tabHost.addTab(spec); 

    //  tabHost.getTabWidget().getChildAt(7).setVisibility(View.GONE); 

    System.out.println("Checking tabhost value::>"+tabHost.getChildCount()); 


} 

请家伙,我怎么能做到这一点....

+0

你准确的问题是什么?问题是“标签主机应该在每个屏幕底部”只? – 2012-02-17 06:36:22

+0

是tabhost应该在每个屏幕的底部.. – 2012-02-17 06:38:56

这多少有点像您从选项卡中单击呼叫的第一项活动。那第一个活动有弹出窗口。现在点击弹出窗口的按钮,您正在调用第二个活动? 是否正确,那么你必须拥有该关键标签中的所有活动。并为此按照此链接:THIS LINK

+0

sry这我已经在我的代码中做了...我的要求是不是这个,点击tabwidget我将弹出显示,其中包含buttons.when我将点击按钮,我需要去新的活动,但tabhost应保持相同.... – 2012-02-17 06:58:16

+0

看到更新的答案。 – 2012-02-17 07:04:03

+0

sry ....我会更清楚地解释你,Think First的活动是tabhost.it由6个选项卡组成,当我点击第六个选项卡时,我将显示popwindow。其中包括按钮,当我点击弹出窗口中的第一个按钮时,应该启动新的活动...由tabhost应该保持相同。在第六个按钮,我使用下面的代码点击.. – 2012-02-17 07:25:32

对于我的应用程序,我已经有这个问题。在我的应用程序中,我的列表视图包含一些项目。当我按任何一个项目时都会显示详细视图到另一个布局。而且,我已经使用这个代码来做到这一点 -

ListView list = (ListView)findViewById(R.id.listview12); 
     list.setAdapter(adapter); 

     list.setOnItemClickListener(new OnItemClickListener() 
     { 
      @SuppressWarnings("unchecked") 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
      { 
       HashMap<String, String> hashMap = new HashMap<String, String>(); 
       hashMap = (HashMap<String, String>) parent.getItemAtPosition(position); 
       String newsid = hashMap.get("id"); 
       int integerid = Integer.parseInt(newsid); 
       description(integerid); 

       //Get the new Activity to tab. 
       Intent previewMessage = new Intent(getParent(), detailedview.class); 
       TabGroupActivity parentActivity = (TabGroupActivity)getParent(); 
       parentActivity.startChildActivity("detailedview", previewMessage); 
      } 
     }); 

我只要按照这些代码,并通过做我的问题出这个Multiple Android Activities in a TabActivity。它提供了Parent & Child方法。它对我非常有用。而且,它对你也很有用。试试吧......!希望这可以帮助你.. :-)