Java 如何使此代码一次工作?
我需要把这部分代码Java 如何使此代码一次工作?,java,android,android-activity,dialog,Java,Android,Android Activity,Dialog,我需要把这部分代码 protected void onCreate(Bundle savedInstanceState) { openingCount++; setContentView(R.layout.activity_main); Drawable d=getResources().getDrawable(R.drawable.actionbar_background); getActionBar().setBackgroundDrawable(d);
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();
}
创建时受保护的void(Bundle savedInstanceState){
openingCount++;
setContentView(R.layout.activity_main);
Drawable d=getResources().getDrawable(R.Drawable.actionbar_后台);
getActionBar().setBackgroundDrawable(d);
//创建adView。
super.onCreate(savedInstanceState);
if(openingCount==1){
AlertDialog.BuilderBuilderSingle=新建AlertDialog.Builder(
主要活动(本);
builderSingle.setIcon(R.drawable.ic_启动器);
setTitle(“选择服务器:”);
最终ArrayAdapter ArrayAdapter=新的ArrayAdapter(
这个,,
android.R.layout.select\u dialog\u singlechoice);
arrayAdapter.添加(“北美”);
ArrayaAdapter.添加(“欧盟西部”);
ArrayaAdapter.添加(“欧盟东北部”);
ArrayaAdapter.add(“南拉丁美洲”);
builderSingle.setNegativeButton(“取消”,
新建DialogInterface.OnClickListener(){
@凌驾
public void onClick(DialogInterface dialog,int which){
dialog.dismise();
}
});
builderSingle.setAdapter(阵列适配器,
新建DialogInterface.OnClickListener(){
@凌驾
public void onClick(DialogInterface dialog,int which){
selectedLink=siteList[which];
selectedServer=serverList[哪个];
ParsingPaginaWeb解析=新建ParsingPaginaWeb();
解析。执行(“”);
}
});
builderSingle.show();
}创建时受保护的void(Bundle savedInstanceState){
openingCount++;
setContentView(R.layout.activity_main);
Drawable d=getResources().getDrawable(R.Drawable.actionbar_后台);
getActionBar().setBackgroundDrawable(d);
//创建adView。
super.onCreate(savedInstanceState);
if(openingCount==1){
AlertDialog.BuilderBuilderSingle=新建AlertDialog.Builder(
主要活动(本);
builderSingle.setIcon(R.drawable.ic_启动器);
setTitle(“选择服务器:”);
最终ArrayAdapter ArrayAdapter=新的ArrayAdapter(
这个,,
android.R.layout.select\u dialog\u singlechoice);
arrayAdapter.添加(“北美”);
ArrayaAdapter.添加(“欧盟西部”);
ArrayaAdapter.添加(“欧盟东北部”);
ArrayaAdapter.add(“南拉丁美洲”);
builderSingle.setNegativeButton(“取消”,
新建DialogInterface.OnClickListener(){
@凌驾
public void onClick(DialogInterface dialog,int which){
dialog.dismise();
}
});
builderSingle.setAdapter(阵列适配器,
新建DialogInterface.OnClickListener(){
@凌驾
public void onClick(DialogInterface dialog,int which){
selectedLink=siteList[which];
selectedServer=serverList[哪个];
ParsingPaginaWeb解析=新建ParsingPaginaWeb();
解析。执行(“”);
}
});
builderSingle.show();
}
运行一次。我希望对话框仅在应用程序启动时显示,但每次我启动此应用程序的子活动,并按“上一步”时,对话框都会显示
我怎么能解决这个问题呢?我试过很多“把戏”,但都不管用
谢谢!您需要保存一个值,该值指示以前是否显示过该对话框 SharedReferences是一个很好的选择
将此计数保存在SharedReference中,而不是简单地增加您的
openingCount
将始终为0,除非您保存在SharedReferences
中。您真的想在每次应用程序启动时都请求服务器吗?这也是一个最好的教程。在android中,启动应用程序的概念非常模糊,但我想一个静态布尔集合和测试将非常接近。