【发布时间】:2013-12-02 22:07:23
【问题描述】:
我需要制作这部分代码
protected void onCreate(Bundle savedInstanceState) {
openingCount++;
setContentView(R.layout.activity_main);
Drawable d=getResources().getDrawable(R.drawable.actionbar_background);
getActionBar().setBackgroundDrawable(d);
// Create the adView.
super.onCreate(savedInstanceState);
if (openingCount == 1){
AlertDialog.Builder builderSingle = new AlertDialog.Builder(
MainActivity.this);
builderSingle.setIcon(R.drawable.ic_launcher);
builderSingle.setTitle("Select A Server:");
final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
MainActivity.this,
android.R.layout.select_dialog_singlechoice);
arrayAdapter.add("North America");
arrayAdapter.add("EU West");
arrayAdapter.add("EU North-East");
arrayAdapter.add("LatinoAmerica Sur");
builderSingle.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builderSingle.setAdapter(arrayAdapter,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
selectedLink = siteList[which];
selectedServer = serverList[which];
ParsingPaginaWeb parsing = new ParsingPaginaWeb();
parsing.execute("");
}
});
builderSingle.show();
}protected void onCreate(Bundle savedInstanceState) {
openingCount++;
setContentView(R.layout.activity_main);
Drawable d=getResources().getDrawable(R.drawable.actionbar_background);
getActionBar().setBackgroundDrawable(d);
// Create the adView.
super.onCreate(savedInstanceState);
if (openingCount == 1){
AlertDialog.Builder builderSingle = new AlertDialog.Builder(
MainActivity.this);
builderSingle.setIcon(R.drawable.ic_launcher);
builderSingle.setTitle("Select A Server:");
final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
MainActivity.this,
android.R.layout.select_dialog_singlechoice);
arrayAdapter.add("North America");
arrayAdapter.add("EU West");
arrayAdapter.add("EU North-East");
arrayAdapter.add("LatinoAmerica Sur");
builderSingle.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builderSingle.setAdapter(arrayAdapter,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
selectedLink = siteList[which];
selectedServer = serverList[which];
ParsingPaginaWeb parsing = new ParsingPaginaWeb();
parsing.execute("");
}
});
builderSingle.show();
}
运行一次。我希望对话框仅在应用程序启动时显示,但每次我启动这个的子 Activity,然后按回,对话框就会显示...
我该如何解决这个问题?我尝试了很多“技巧”,但都没有奏效......
谢谢!
【问题讨论】:
-
将此计数保存在 sharedpreference 中的简单增量中
-
除非您保存在
sharedPreferences中,否则您的openingCount将始终为0。 -
您真的想在每次应用启动时都请求服务器吗?
-
在 android 中启动应用的概念相当模糊,但我想静态布尔集和测试会非常接近。
标签: java android android-activity dialog