2012-02-17 48 views
1

私はTab-hostとは別の問題に直面しています。私はステップを明確に説明します。問題tab-host android?

1. 6つのタブを持つタブホストを表示しています。

2.On 6番目のタブをクリックすると、ここにButtons.Untilというポップアップが表示されます。すべてのものがうまく動作しています。

3.ポップアップでボタンをクリックします。別のアクティビティを表示する必要がありますが、タブホストはすべての画面の下部にあるはずです。

タブホストを表示する&ポップアップ私は次のコードを使用しています。

ます。private void 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

あなたの問題は何ですか?問題は "タブホストはすべての画面の下部にあるはずです"だけですか? –

+0

はいtabhostはすべての画面の下にする必要があります.. –

答えて

0

それはあなたのタブをクリックからの最初のアクティビティを呼び出しているようなものです。最初のアクティビティにはポップアップウィンドウがあります。今すぐポップアップウィンドウのボタンをクリックすると、セカンドアクティビティの権利が呼び出されますか? それはあなたがそのperticularタブですべての活動を持っている必要があります。それについては、このリンクに従ってください:THIS LINK

+0

これは私のコードで行ったことがあります...私の要求はタブウィジェットのクリックでこれではありません私はボタンを構成するポップアップを表示します。 、私は新しい活動に行く必要がありますが、タブーホストは同じままでなければなりません.... –

+0

更新された答えを参照してください。 –

+0

sry ....私はより明確にuを説明します。think Firstアクティビティはtabhost.itの6つのタブで構成されています.6番目のタブをクリックすると、popwindowが表示されます。これはボタンで構成されています。ポップアップウィンドウの最初のボタンをクリックすると新しいアクティビティが開始されます。tabhostは6番目のボタンをクリックしたままにしてください。 –

0

私はすでにこの問題を抱えています。私のアプリケーションでは、リストビューにはいくつかの項目が含まれています。ときに、私はアイテムの誰かを押すと、別のレイアウトへの詳細なビューで表示されます。そして、私はそれを行うには、このコードを使用してきました -

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メソッドを提供します。その私のために非常に便利です。そして、あなたにとっても非常に便利です。ただ試してみてください...!これがあなたに役立つことを願っています:-)