我刚开始Android开发。我有一个非常简单的项目。我有一个按钮和一个textview。当我点击按钮时,textView的文本发生变化,并且按钮被禁用。这部分工作正常。但是,如果我按下手机上的家中(退出键盘)并返回到我的应用程序,我希望按钮保持其状态(禁用状态)。但在我的情况下,每当我按下home并回到我的应用程序时,Button都会启用。这里是代码按钮未保存状态onResume
package com.mypack.textmanipulation;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.*;
public class MainActivity extends Activity {
private Button btnChangeText;
private boolean check;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnChangeText = (Button)findViewById(R.id.btnChangeText);
check = true;
setButtonOnClickInterface();
}
@Override
protected void onResume()
{
super.onResume();
checkButtonIsEnabled();
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
private void setButtonOnClickInterface()
{
btnChangeText.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
// TODO Auto-generated method stub
TextView txtView = (TextView)findViewById(R.id.textView1);
txtView.setText("Text Changed");
btnChangeText.setEnabled(false);
check = false;
}
});
}
private void checkButtonIsEnabled()
{
if (check)
{
btnChangeText.setEnabled(true);
}
else
{
btnChangeText.setEnabled(false);
}
}
}
建议,欢迎。 感谢
请阅读活动生命周期文档,特别是onPause()和onResume()。 – Simon
你的问题得到解决或不? –
您是否尝试调试检查的值? –