Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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
Android 当按下后退按钮时,应用程序退出。为什么?_Android - Fatal编程技术网

Android 当按下后退按钮时,应用程序退出。为什么?

Android 当按下后退按钮时,应用程序退出。为什么?,android,Android,在我的应用程序中,当我按下以下活动的后退按钮时,不会返回到主活动(片段),但应用程序会关闭 public class ListaSmartphone extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.lista_smartphon

在我的应用程序中,当我按下以下活动的后退按钮时,不会返回到主活动(片段),但应用程序会关闭

public class ListaSmartphone extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.lista_smartphone);

    Button buttonSP = (Button)findViewById(R.id.buttonXIAOMI);
    buttonSP.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            Intent openListaSP = new Intent(ListaSmartphone.this, ElencoXiaomi.class);
            startActivity(openListaSP);
        }
    });

    Button buttonTB = (Button)findViewById(R.id.buttonMEIZU);
    buttonTB.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            Intent openListaTB = new Intent(ListaSmartphone.this, ElencoMeizu.class);
            startActivity(openListaTB);
        }
    });

}
}
这是主要的活动代码

public class MainActivity extends AppCompatActivity {

FragmentPagerAdapter adapterViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ViewPager vpPager = (ViewPager) findViewById(R.id.vpPager);
    adapterViewPager = new MyPagerAdapter(getSupportFragmentManager());
    vpPager.setAdapter(adapterViewPager);
    vpPager.setPageTransformer(true, new RotateUpTransformer());

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}


public static class MyPagerAdapter extends FragmentPagerAdapter {
    private static int NUM_ITEMS = 4;
    private static final String[] TAB_TITLES = new String[]{"WOW STORE", "PRODOTTI", "SERVIZI", "INFO"};

    public MyPagerAdapter(FragmentManager fragmentManager) {
        super(fragmentManager);
    }

    // Returns total number of pages

    // Returns the fragment to display for that page
    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                return FragmentWithZeroImage.newInstance("", R.drawable.wowstorelogo);
            case 1:
                return FragmentWithOneImage.newInstance("", R.drawable.prodotti);
            case 2:
                return FragmentWithTwoImages.newInstance("", R.drawable.riparazioni);
            case 3:
                return FragmentWithThreeImages.newInstance("", R.drawable.info);
            default:
                return null;
        }
    }

    @Override
    public int getCount(){
        return TAB_TITLES.length;
    }

    @Override
    public CharSequence getPageTitle(int position){
        return TAB_TITLES[position];
    }


}
}

该应用程序工作正常,没有错误,但当按下“后退”按钮时,该应用程序将退出,而不会返回MainActivity。
我使用带有四个片段的主活动。

在传递意图时,您可能使用finish();在startActivity()之后使用以下代码:

 @Override
public void onBackPressed() {
     this.startActivity(new Intent(ListaSmartphone.this,MainActivity.class));
// super.onBackPressed();

 }

并在MainActivity的
onCreate
函数中打开片段

如果您想返回到MainActivity on back按钮,请按此代码

@Override
public void onBackPressed() {
 startActivity(new Intent(getApplicationContext(),MainActivity.class));
}

请张贴主要活动的代码你所说的片段是什么意思?它在哪里?请发布您的
main活动
是否收到错误消息?哪一个?启动ListaSmartphone时您是否完成了主要活动?如果是,则当用户通过“后退”按钮返回到该屏幕时,如果希望显示,则不要完成。启动ListaSmartphone的代码在哪里?