您好我在尝试获取一个SeekBar将使用.getprogress进入整数的整数,该整数将由首选项保存并将转到我的应用程序另一侧的toast代码中事情变得更容易了我的代码。
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.SeekBar.OnSeekBarChangeListener;
import tk.mizzeeboy.freestorageconverter.R;
public class SettingsActivity extends Activity{
SeekBar cl;
TextView t;
String lolly , finlly;
int hehe;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.333);
cl = (SeekBar) findViewById(R.id.seekB3r1);
t = (TextView) findViewById(R.id.textV3w1);
cl.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {
// TODO Auto-generated method stub
t.setTextSize((cl.getProgress()) * getResources().getDisplayMetrics().density);
hehe = cl.getProgress();
finlly.valueOf(hehe);
SharedPreferences mypreferences = getSharedPreferences("myPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = mypreferences.edit();
editor.putString("TeamName", finlly);
editor.commit();
}
});
}
}
在我的其他活动中,我想打开并阅读它后面的代码
SharedPreferences mypreferences = getApplicationContext().getSharedPreferences("myPrefs", Context.MODE_PRIVATE);
String teamnamestring = mypreferences.getString("TeamName", "Please Enter :)");
Toast andEggs = Toast.makeText(BitActivity.this, teamnamestring , Toast.LENGTH_SHORT);
andEggs.show();
但我的问题是,我每次都会收到请输入标志,如果有人帮忙,它不会拿起我的整数吗?
答案 0 :(得分:0)
TGMCians所说的是,您将hehe
作为Int
添加到首选项中editor.putInt("TeamName", hehe);),
,然后将其作为String
添加到其他活动中mypreferences.getString("TeamName",...
1}})。这会导致ClassCastException
。或者,你从开头就把它作为String
或者在第二个活动中把它作为Int
。
尝试:
int val=mypreferences.getInt("TeamName",-1);
String teamnamestring="";
if(val==-1){
teamnamestring="Please Set Up Your Custom Text Size!";}
else {teamnamestring=String.ValueOf(val);}
Toast andEggs = Toast.makeText(BitActivity.this, teamnamestring , Toast.LENGTH_SHORT);
andEggs.show();