我试图使用sharedpreference存储一个int,该int根据用户选择改变它的id,我不知道如何存储用户选择的以及如何读取它,我现在主要关心的是如何要存储我会想出如何阅读它,但请有人告诉我如何解决这个问题。如何使用Sharedpreference来存储int?
这里是我的MainActivity:
public class MainActivity extends Activity implements OnClickListener {
static int tophone;
ImageView display;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tophone = R.drawable.iv1;
display = (ImageView) findViewById(R.id.IView);
ImageView image1 = (ImageView) findViewById(R.id.iv1);
ImageView image2 = (ImageView) findViewById(R.id.iv2);
ImageView image3 = (ImageView) findViewById(R.id.iv3);
ImageView image4 = (ImageView) findViewById(R.id.iv4);
Button setWp = (Button) findViewById(R.id.setWp);
image1.setOnClickListener(this);
image2.setOnClickListener(this);
image3.setOnClickListener(this);
image4.setOnClickListener(this);
setWp.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()){
case R.id.iv1:
display.setImageResource(R.drawable.iv1);
tophone = R.drawable.iv1;
break;
case R.id.iv2:
display.setImageResource(R.drawable.iv2);
tophone = R.drawable.iv2;
break;
case R.id.iv3:
display.setImageResource(R.drawable.iv3);
tophone = R.drawable.iv3;
break;
case R.id.iv4:
display.setImageResource(R.drawable.iv4);
tophone = R.drawable.iv4;
break;
case R.id.setWp:
Toast WpSet = Toast.makeText(MainActivity.this,"Wallpaper Set", Toast.LENGTH_SHORT);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int height = metrics.heightPixels;
int width = metrics.widthPixels;
Bitmap tempbitMap = BitmapFactory.decodeResource(getResources(), tophone);
Bitmap bitmap = Bitmap.createScaledBitmap(tempbitMap,width,height, true);
WallpaperManager wallpaperManager = WallpaperManager.getInstance(MainActivity.this);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(width, height);
try {
wallpaperManager.setBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
WpSet.show();
break;
,你可以看到我想要存储,这是“tophone”图像的ID。 我想存储该ID,以便我可以在广播回忆器中引用它。 在此先感谢
您正在使用的代码尝试并将其存储在SharedPrefs中? – codeMagic 2014-09-18 20:45:35
“int tophone”@codeMagic – 2014-09-18 20:47:03
但是你说你已经尝试使用SharedPrefs,但是你没有显示任何代码,以便我们告诉你你做错了什么。如果你只是想要一个例子,那么互联网和文档上就有很多。 – codeMagic 2014-09-18 20:47:56