在onCreate()中选择两个xml文件,可能吗?

时间:2012-03-06 09:49:58

标签: android xml

  

我想在应用程序启动时在onCreate()中选择两个xml文件。

例如,假设我在应用程序打开时正在读取电池状态,如果它低于某个级别,我应该显示警告消息或应用程序的启动活动。这可行吗????如果有办法,我可以得到一些帮助????

  

我的代码

isSDCard = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
        super.onCreate(savedInstanceState);

        if(isSDCard)
        {
            Intent intent = new Intent(Activity.this,SDcard.class);
            startActivity(intent);
            finish();
            //setContentView(R.layout.missing_sd);
        }
        else{

            //Intent intent = new Intent(this,ImageSelection.class);    
            //startActivity(intent);
        //  finish();
            setContentView(R.layout.image_menu);
        }
  }
  

我的SDcard.class

public class SDcard extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.missing_sd);
      //  Button inserted_card = (Button) findViewById(R.id.button_insert);
       // inserted_card.setOnClickListener(new OnClickListener() {

            //public void onClick(View v) {
            //  Toast.makeText(getApplicationContext(), "Card Inserted!!!", Toast.LENGTH_SHORT).show();

            //}
        //});

    }
}
  

我评论了onclick部分以确保它不起作用!!!

2 个答案:

答案 0 :(得分:4)

是的,有可能,例如:

//in onCreate
if (somecondition) {
    setContentView(R.layout.first);
}
else {
    setContentView(R.layout.second);
}

但是如果你在这种情况下提供不同的功能,根据条件开始不同的活动会不会更好?

例如:

//in onCreate
if (somecondition) {
    Intent i = new Intent(this, FirstActivity.class);
    startActivity(i);
}
else {
    Intent i = new Intent(this, SecondActivity.class);
    startActivity(i);
}

答案 1 :(得分:0)

你可以这样做

   if (level < 10) {
        // navigate or finish();
    }else{
       // Do nothing
    }

我希望这是,你问的是什么..