小编Bro*_*roo的帖子

SharedPreferences Android中的NullPointerException

我第一次使用sharedPreferences,我似乎无法通过此错误.我有一个子菜单,应该允许用户设置他们的区域.这应该打开正确的区域活动,并在再次打开应用程序时进行存储和调用.我已经多次转圈,所以有些代码会有点奇怪.我一直专注于从美国(默认)改为英国.

在DDMS中,我得到了这个:

05-13 11:22:39.344: ERROR/AndroidRuntime(960): java.lang.NullPointerException
05-13 11:22:39.344: ERROR/AndroidRuntime(960):     at android.content.ContextWrapper.getSharedPreferences(ContextWrapper.java:146)
05-13 11:22:39.344: ERROR/AndroidRuntime(960):     at com.silifeform.android.Prefs.editRegion(Prefs.java:29)
05-13 11:22:39.344: ERROR/AndroidRuntime(960):     at com.silifeform.android.dog.onOptionsItemSelected(dog.java:344)
Run Code Online (Sandbox Code Playgroud)

我的代码是这样的:

public class Prefs extends Activity {
public static final String PREFS_NAME="LocalePrefs";
private String region;
public boolean isUk;
public boolean isUs;
public boolean isEu;

@Override
protected void onCreate(Bundle state) {
    super.onCreate(state);

    //restore prefs
    SharedPreferences settings= getSharedPreferences(PREFS_NAME,0);
    String myRegion = settings.getString(region,"us");

    this.region=myRegion;
    changeLocale(getRegion());
}

public void editRegion(String sregion) {
// The error occurs here:
    SharedPreferences settings = getSharedPreferences(PREFS_NAME,0);
    SharedPreferences.Editor ed …
Run Code Online (Sandbox Code Playgroud)

android nullpointerexception sharedpreferences

12
推荐指数
2
解决办法
3万
查看次数

什么是字符0x1f?

我刚刚将一大块文本导入到书籍应用程序的字符串元素中,我收到此错误:在本文档的元素内容中找到了无效的XML字符(Unicode:0x1f).我在这里查看了http://lwp.interglacial.com/appf_01.htm并且描述说US(删除下划线似乎不起作用).这个角色是什么,所以我可以删除它.我是新手android这么简单的答案请:)

xml android

12
推荐指数
2
解决办法
5万
查看次数

清除以前在EditText字段中输入的文本

嘿,我正在尝试让我的editText窗口清除其内容时:1)重新选择输入不同的数据或2)按下按钮输入预定数据

这不是提示文本.一旦输入预定数据,它就会停留在那里,即使使用删除也无法清除它.我已经尝试将editBox.setText("")放在onClick Listener和addTextChangedListener(前后方法)上,使用布尔值来确定代码是否已被输入,但它只是忽略它.

foodBox.addTextChangedListener(new TextWatcher(){

        @Override
        public void afterTextChanged(Editable s) {

        }
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before,
                int count) {
            addFood();
            valueAdded=true;
        }           
    });


    dogButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (valueAdded==true){
                foodBox.setText("");
                setFood(0.0);
            }
            isClicked=true;
            animal=1;
            addFood();
            valueAdded=true;//value in the box
                }


    });


    catButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (valueAdded){
               foodBox.setText("");}
            isClicked=true;
            animal=2;
            addFood();
            valueAdded=true;
            } …
Run Code Online (Sandbox Code Playgroud)

android clear android-edittext

6
推荐指数
1
解决办法
3万
查看次数

将Eclipse工作区从PC转移到Mac后,“无法将R解析为变量”

我正在将我的开发计算机从Windows 7切换到Mac。我保存了旧的工作区并将整个文件传输到mac。Eclipse已找到工作空间,但出现“无法解析..”错误。我尝试了通常的建议:清理,自动生成,按Ctrl + Shift + O等,但是它不起作用。这是转移工作空间的正确方法吗?谢谢

eclipse android

5
推荐指数
1
解决办法
4383
查看次数

3
推荐指数
1
解决办法
9126
查看次数