将价值传递给从偏好中的意图开始的活动?

时间:2014-04-02 20:42:55

标签: android android-intent colors preference

我有许多颜色可供用户在偏好设置中设置。为此我有一个带ColorPicker的Activity。问题是不知道如何将更改颜色的键传递给ColorPicker,以便将其保存在SharedPreferences中。

        <Preference
            android:title="@string/pref_text_color"
            >
            <intent android:targetPackage="com.example.android.launcher"
                    android:targetClass="com.example.android.launcher.preferences.ColorPicker" />
            <!-- Pass value "textColor" -->
        </Preference>

如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式将含有Intent的数据添加到ColorPicker活动中:

Intent intent = new Intent(this, ColorPickerActivity.class);
intent.putExtra("UNIQUE_KEY_FOR_THIS_COLOR_INFORMATION", colorIndex);

并在接收方检索它:

getIntent().getIntExtra("UNIQUE_KEY_FOR_THIS_COLOR_INFORMATION", -1);

其中-1是默认数据,如果没有找到该键的值。

Android有一份非常详细的Intents文档,您应该通过这些文档:http://developer.android.com/reference/android/content/Intent.html