所以我试图为我添加一些值,SharedPreferences但每次单击按钮时它都会使用默认值,00所以我的if语句总是返回true,即使它不应该.
private static final String SHARED_FREFS = "sharedPrefs";
private static final String STATE = "state";
Run Code Online (Sandbox Code Playgroud)
这是按钮点击事件
public void onClick(View v) {
SharedPreferences sharedPreferences = getSharedPreferences(SHARED_FREFS, MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
int currentTime = Calendar.getInstance().getTime().getMinutes();
String eh = sharedPreferences.getString(STATE, "00");
if(!Integer.toString(currentTime).equalsIgnoreCase(sharedPreferences.getString(STATE, "00"))){
GetData();
editor.putString(STATE, Integer.toString(currentTime));
Log.e("ATTENTION!:", "METHOD HAS BEEN FIRED!");
}
}
});
Run Code Online (Sandbox Code Playgroud)
我试图将当前分钟存储在那里,但它没有这样做.我是否需要一个名为data的文件夹,其中包含一个名为的xml文件sharedPrefs?
因此,我想拍照并显示在屏幕上。我可以按按钮并拍照,但屏幕上没有显示ImageView。我无法通过搜索找到解决方案onActivityresult。
我现在所拥有的:
public class MainActivity extends AppCompatActivity {
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnCamera = findViewById(R.id.btnCamera);
imageView = findViewById(R.id.imageView);
// Open camera and take picture
btnCamera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 0);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode,Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Bitmap bitmap = (Bitmap)data.getExtras().get("Data");
imageView.setImageBitmap(bitmap);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试为 android studio 中的选项菜单项添加事件,但是当我使用 item.itemId 时收到此错误消息
在 MenuItem 类型的可空接收器上只允许安全(?.)或非空断言(!!.)调用
这是我的代码
override fun onOptionsItemSelected(item: MenuItem?): Boolean {
if(item.itemId==R.id.home){
var homeIntent= Intent(this,SignIn::class.java)
startActivity(homeIntent)
}
else if(item.itemId==R.id.sign_in){
var signInIntent= Intent(this,SignIn::class.java)
startActivity(signInIntent)
}
else if(item.itemId==R.id.close){
System.exit(0)
}
return super.onOptionsItemSelected(item)
}
Run Code Online (Sandbox Code Playgroud)