相关疑难解决方法(0)

共享首选项中commit()和apply()之间的区别是什么

我在我的Android应用程序中使用共享首选项.我正在使用共享偏好中的两者commit()apply()方法.当我使用AVD 2.3时它没有显示错误,但是当我在AVD 2.1中运行代码时,apply()方法显示错误.那么这两者有什么区别?通过使用commit()我只能存储偏好值没有任何问题?

android sharedpreferences

412
推荐指数
8
解决办法
11万
查看次数

动态更改colors.xml的值以更改android应用程序的外观

问题: 我正试图在运行中改变我的Android应用程序的外观和感觉.类似的东西,应用程序启动并从服务器获取一组值.这些值是通常在colors.xml内部的元素.我正在寻找的是一种动态更改colors.xml内部元素的方法,并使用从服务器接收的这些新值更新它.我的理解是,通常情况下,这不能直接完成.但有没有人找到解决方法?

如果可能的话我想避免: 我想避免在每个活动的onCreate()方法中为该视图中的每个元素设置颜色值.如果可能的话,我想避免这种情况.

有什么想法吗?

android android-layout

7
推荐指数
1
解决办法
5889
查看次数

使用viewpager.setCurrentItem(position)传递一些数据

我希望在按钮点击内传递一些值,同时更改viewpager选项卡片段.我有两个问题.

  1. 传递数据的最佳方法是什么?
  2. 如果我使用静态数据会有什么问题?如:

    public static string abc=""
    
    case R.id.IVActionMore:   
    ViewPager viewPager = (ViewPager) getActivity().findViewById(R.id.tabs_viewpager);
    viewPager.setCurrentItem(3);
    //abc = "action";
    break;
    
    Run Code Online (Sandbox Code Playgroud)

java android android-viewpager

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

自定义 SharedPreferences 类

我是 android 新手和学习者。我的应用程序中有主题更改选项,用户可以在其中切换主题。我使用全局变量在应用程序中保存主题编号,但当应用程序从后台清除时,它会出现损失。所以我考虑使用 SharedPreferences 来达到这个目的。我找到了一种从这里存储和检索 SharedPreference 的简单方法。

我的代码如下

public class Keystore {
    private static Keystore store;
    private SharedPreferences SP;
    private static String filename="Keys";
    public static int theme=1;

    private Keystore(Context context) {
        SP = context.getApplicationContext().getSharedPreferences(filename,0);
    }

    public static Keystore getInstance(Context context) {
        if (store == null) {
            store = new Keystore(context);
        }
        return store;
    }

    public void put(String key, String value) {
        SharedPreferences.Editor editor;
        editor = SP.edit();
        editor.putString(key, value);
        editor.apply();
    }

    public String get(String key) {
        return SP.getString(key, …
Run Code Online (Sandbox Code Playgroud)

java android sharedpreferences

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

如何将共享首选项应用于复选框

我是Android开发的新手,我创建了一个复选框以及如何使用共享首选项保存选中/取消选中

final Button add = (Button) findViewById(R.id.add);
        add.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                addNewBubble();
                add.setEnabled(false);
            }
        });

        CheckBox checkBox = (CheckBox)findViewById(R.id.add_fb);
        checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

                isCheckedValue = isChecked;

            }
        });

    }


private void addNewBubble() {
        BubbleLayout bubbleView = (BubbleLayout)LayoutInflater.from(MainActivity.this).inflate(R.layout.bubble_layout, null);
        bubbleView.setOnBubbleRemoveListener(new BubbleLayout.OnBubbleRemoveListener() {
            @Override
            public void onBubbleRemoved(BubbleLayout bubble) {
                finish();
                System.exit(0);



            }
        });
        bubbleView.setOnBubbleClickListener(new BubbleLayout.OnBubbleClickListener() {

            @Override
            public void onBubbleClick(BubbleLayout bubble) {
                Intent in = new Intent(MainActivity.this, PopUpWindow.class);
                in.putExtra("yourBoolName", isCheckedValue ); …
Run Code Online (Sandbox Code Playgroud)

checkbox android sharedpreferences android-checkbox android-studio

0
推荐指数
1
解决办法
4622
查看次数

在android中保存身份验证令牌的共享首选项

我以前从未使用sharedprefrences过,现在我想将身份验证令牌存储在sharedprefrences. 这是我的代码,我在hawkerauthToken其中获取用户令牌,其中是一个字符串,我想将此令牌存储在sharedprefrences

JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, LOGIN_URL, object,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {
                        try {
                            VolleyLog.v("v_response", response.toString(4));
                            Log.d("resopnse", response.toString());

                            hawkerauthToken = String.valueOf(response.get("token"));
                            Log.d("tokeennnn" , hawkerauthToken);


                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
Run Code Online (Sandbox Code Playgroud)

android sharedpreferences

0
推荐指数
1
解决办法
5869
查看次数

如何使用共享首选项来保存从数据库获取的数据?

我有这个按钮代码,它连接到数据库

bLogin.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            final String username = etUsername.getText().toString();
            final String password = etPassword.getText().toString();

            // Response received from the server
            Response.Listener<String> responseListener = new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    try {
                        JSONObject jsonResponse = new JSONObject(response);
                        boolean success = jsonResponse.getBoolean("success");

                        if (success) {
                            String name = jsonResponse.getString("name");
                            String email = jsonResponse.getString("email");
                            String alamat = jsonResponse.getString("alamat");
                            int notelp = jsonResponse.getInt("notelp");
                            String username = jsonResponse.getString("username");
                            String password = jsonResponse.getString("password");

                            Intent intent = new …
Run Code Online (Sandbox Code Playgroud)

java android sharedpreferences

-2
推荐指数
1
解决办法
2168
查看次数