Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在我的活动本身中使用底部选项卡活动_Java_Android_Tabs - Fatal编程技术网

Java 如何在我的活动本身中使用底部选项卡活动

Java 如何在我的活动本身中使用底部选项卡活动,java,android,tabs,Java,Android,Tabs,我想在我的活动中使用底部选项卡,在我的旧活动本身中有一些功能,没有使用单独的活动作为选项卡,我可以在我的活动本身中使用选项卡功能吗,我这样尝试过 public class GinfyActivity extends Activity { /** Called when the activity is first created. */ public GridviewAdapter mAdapter; private Spinner spinner1; pub

我想在我的活动中使用底部选项卡,在我的旧活动本身中有一些功能,没有使用单独的活动作为选项卡,我可以在我的活动本身中使用选项卡功能吗,我这样尝试过

public class GinfyActivity extends Activity {


    /** Called when the activity is first created. */

    public GridviewAdapter mAdapter;
    private Spinner spinner1;
    public String selectprayer;


    ArrayList<GridviewAdapter> results = new ArrayList<GridviewAdapter>();

    private ArrayList<String> listginfy;
    private ArrayList<Integer> listimage;

    private GridView gridView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home_ginfy);

        TabHost mTabHost = (TabHost)findViewById(android.R.id.tabhost);

        mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("TAB 1").setContent(new Intent(GinfyActivity.this,Audioprayer.class)));
        mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("TAB 2").setContent(new Intent(GinfyActivity.this,TTSMeditation.class)));
        mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("TAB 3").setContent(new Intent(GinfyActivity.this,TTSList.class)));

        mTabHost.setCurrentTab(0);

        addListenerOnButton();
        addListenerOnSpinnerItemSelection();






        prepareList();


        // prepared arraylist and passed it to the Adapter class
   mAdapter = new GridviewAdapter(this,listginfy, listimage);

        // Set custom adapter to gridview
        gridView = (GridView) findViewById(R.id.gridView1);
        gridView.setAdapter(mAdapter);

        // Implement On Item click listener
        gridView.setOnItemClickListener(new OnItemClickListener() 
        {
            @Override
            public void onItemClick(AdapterView<?> a, View v, int position, long id) {


                if (selectprayer.equals("www.ginfy.com"))
                {

                switch(position)
                { 
                case 0:
                Intent newActivity = new Intent(GinfyActivity.this,MainActivity.class);
                startActivity(newActivity);
                break;

                case 2:
                Intent new1Activity = new Intent(GinfyActivity.this,AndroidTabLayoutActivity.class);
                startActivity(new1Activity);
                break;
                default:
                    Toast.makeText(GinfyActivity.this, "Coming Soon", Toast.LENGTH_LONG).show();
                    }
                }
                else
                {

                    switch(position)
                    {
                    case 0:
                    Intent new2Activity = new Intent(GinfyActivity.this,YourPrayerActivity.class);
                    startActivity(new2Activity);
                    break;

                    case 1:
                    Intent new3Activity = new Intent(GinfyActivity.this,AndroidTabLayoutActivity1.class);
                    startActivity(new3Activity);
                    break;

                    case 3:
                    Intent new4Activity = new Intent(GinfyActivity.this,ExperiencesActivity.class);
                    startActivity(new4Activity);
                    break;
                    default:
                        Toast.makeText(GinfyActivity.this, "Coming Soon", Toast.LENGTH_LONG).show();
                        }


                }
            }
        });
    }




    public void addListenerOnSpinnerItemSelection() {
        {
            spinner1 = (Spinner) findViewById(R.id.spinner1);
            spinner1.setOnItemSelectedListener(new OnItemSelectedListener() 
            {
                public void onItemSelected(AdapterView<?> parent, View view, int position,
                        long id) {

                    spinner1.setSelection(position);
                    //spinnerCapital.setSelection(position);

                    selectprayer = (String) spinner1.getSelectedItem();

                    //Toast.makeText(getBaseContext(), selectprayer, Toast.LENGTH_SHORT).show();
                    //String myStatesCapital = (String) spinnerCapital.getSelectedItem();



                    //tvCapital.setText("My State is " + myState + ".And its Capital is "
                            //+ myStatesCapital);

                }

                public void onNothingSelected(AdapterView<?> parent) {

                }});
        }
        }




    public void addListenerOnButton() {
        spinner1 = (Spinner) findViewById(R.id.spinner1);

    }

    public void prepareList()
    {
        listginfy = new ArrayList<String>();

        listginfy.add("Prayers");
        listginfy.add("Prayer room");
        listginfy.add("God gallery");
        listginfy.add("Experiences");


        listimage = new ArrayList<Integer>();
        listimage.add(R.drawable.ginfyprayer);
        listimage.add(R.drawable.poojaroom1);
        listimage.add(R.drawable.godsgallery);
        listimage.add(R.drawable.temp1);

    }


}

更换这两条线路

public class GinfyActivity extends Activity
TabHost mTabHost = (TabHost)findViewById(android.R.id.tabhost);
有以下几点

public class GinfyActivity extends TabActivity
TabHost mTabHost = getTabHost();
编辑

更改要在下一行中显示的活动

Intent intentAndroid = new Intent().setClass(this, Your_Activity.class);
如果您只需要
Tab
,那么最好使用
ActionBar
,因为TabHost已被弃用

虎斑蝶

要使用
ActionBar
,这里是示例代码(使用Sherlock或appcompat库来处理
对于您的完整要求,不确定您试图实现的目标。。。但我猜这个错误和它无关:你在44行有一个NPE,检查这行。(例如,is gridView=(gridView)findViewById(R.id.gridView1);是否实际找到了gridView1 id?如果要查看哪一行是第44^^^@Guian行,这将非常有帮助。我只想显示选项卡,因为这两个活动是混合的,我只想单独显示选项卡,因为我必须创建getTabHost()方法);您是否已将
活动
替换为
选项卡活动
?伙计,它工作正常,但我不想显示那些活动我只想显示选项卡而不是活动,因为它与活动重叠我不想显示活动,我只想显示选项卡,因为它们彼此重叠,同时单击tab单独它必须转到活动请参考我答案中提供的链接。
Intent intentAndroid = new Intent().setClass(this, Your_Activity.class);
public class MainActivity extends Activity implements TabListener {
ActionBar actionBar;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    actionBar=getActionBar();
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    actionBar.addTab(actionBar.newTab().setText("TAB 1").setTabListener(this));
    actionBar.addTab(actionBar.newTab().setText("TAB 2").setTabListener(this));
    actionBar.addTab(actionBar.newTab().setText("TAB 3").setTabListener(this));
}

@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
    // TODO Auto-generated method stub

}

@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
    switch (tab.getPosition()) {
    case 0:
        //start activity here or toast
        Toast.makeText(getApplicationContext(), "Start First Activity", Toast.LENGTH_SHORT).show();
        break;
    case 1:
        //start activity here or toast
        Toast.makeText(getApplicationContext(), "Start Second Activity", Toast.LENGTH_SHORT).show();
        break;
    case 2:
        //start activity here or toast
        Toast.makeText(getApplicationContext(), "Start Third Activity", Toast.LENGTH_SHORT).show();
        break;

    default:
        break;
    }

}

@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
    // TODO Auto-generated method stub

}

 }