gpt4 book ai didi

java - 我在 SharedPreferences 保存 int 时遇到问题

转载 作者:行者123 更新时间:2023-12-01 11:18:46 27 4
gpt4 key购买 nike

package com.carterharrison.taptap;

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.media.MediaPlayer;
import android.os.Vibrator;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;


public class MainActivity extends ActionBarActivity {
SharedPreferences SP;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SP = getSharedPreferences("points", Context.MODE_PRIVATE);


}




public int x = SP.getInt("points", -1);



public void val1(View v){

x = (x+1);
con();

}

public void val2(View v){

x = (x+2);
con();
}

public void val3(View v){

x = (x+5);
con();
}

public void val4(View v){

x = (x+10);
con();

}

public void val5(View v){

x = (x+25);
con();

}

public void val6(View v){

x = (x+50);
con();

}

public void con(){
SharedPreferences.Editor editor = SP.edit();

if (x > 1000) {
ImageView img5=(ImageView)findViewById(R.id.imageView5);
img5.setVisibility(View.VISIBLE);}
if (x > 625) {
ImageView img4=(ImageView)findViewById(R.id.imageView4);
img4.setVisibility(View.VISIBLE);}
if (x > 300) {
ImageView img3=(ImageView)findViewById(R.id.imageView3);
img3.setVisibility(View.VISIBLE);}
if (x > 100) {
ImageView img2=(ImageView)findViewById(R.id.imageView2);
img2.setVisibility(View.VISIBLE);}
if (x > 30) {
ImageView img=(ImageView)findViewById(R.id.ImageView);
img.setVisibility(View.VISIBLE);}

TextView tv = (TextView)findViewById(R.id.val);
tv.setText("" + x);


editor.putInt("score", x);
editor.apply();

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}

}

我正在尝试保存 int x 的值。我的应用程序在启动时崩溃,有人可以帮助我吗,我对 java 和 SharedPreferences 很陌生,谢谢。我可能做错了,我需要帮助保存 x 的值。

最佳答案

SharedPReference中设置int值。

public void SaveInt(String key, int value){
SharedPreferences sharedPreferences = getSharedPreferences("points", Activity.MODE_PRIVATE)
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt(key, value);
editor.commit();
}

SharedPreference获取Int

public void LoadInt(String key){
SharedPreferences sharedPreferences = getSharedPreferences("points", Activity.MODE_PRIVATE)
int savedValue = sharedPreferences.getInt(key, 0);
}

编辑:

每当您想要在共享首选项保存int值时,只需调用方法即可如下所示:

SaveInt("my_int", 5);

每当你想检索相同 int 的值时:

int mScore = LoadInt("my_int");

希望对您有帮助。

关于java - 我在 SharedPreferences 保存 int 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31498090/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com