首选项中的列表视图项
A listview item in preferences
我是 Android 应用程序开发的新手!我正在开发一个带有设置的应用程序。我想按类别划分设置(例如 android 系统设置)。我找到了偏好,尤其是本指南:http://android-journey.blogspot.it/2010/01/for-almost-any-application-we-need-to.html
所以我创建了 activity 和 xml 文件,没问题。但是我想添加一个像 listview 这样的项目,当我触摸它时,它会打开另一个 activity。可以吗?
您应该创建带有首选项的设置 - "listview" 的项目并为它们设置操作:对您的其他设置活动的意图。
private void createRateAppPrefListener() {
Intent marketIntent = getMarketIntent(mContext);
String rateAppKey = getString(R.string.pref_rate_app_key);
Preference rateAppPref = findPreference(rateAppKey);
if (rateAppPref != null) {
rateAppPref.setIntent(marketIntent);
}
}
private Intent getMarketIntent(Context context) {
String appPackageName = context.getPackageName();
Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName));
marketIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
return marketIntent;
}
不久
Intent intent = ...
Preference pref = findPreference(getString(R.string.your_pref_key));
pref.setIntent(intent);
Youtube 偏好,例如
更新:
它不是列表视图或列表项,它是标准首选项,在 xml 文件
中定义
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<Preference
android:key="@string/pref_rate_app_key"
android:summary="@string/pref_rate_app_summary"
android:title="@string/pref_rate_app_title" />
...
但它可以更简单
<Preference
android:summary="@string/pref_licenses_summary"
android:title="@string/pref_licenses_title">
<intent android:action="com.mdhelper.cardiojournal.view.activities.LicensesActivity" />
</Preference>
只需在您的首选项中添加意图定义xml
我是 Android 应用程序开发的新手!我正在开发一个带有设置的应用程序。我想按类别划分设置(例如 android 系统设置)。我找到了偏好,尤其是本指南:http://android-journey.blogspot.it/2010/01/for-almost-any-application-we-need-to.html 所以我创建了 activity 和 xml 文件,没问题。但是我想添加一个像 listview 这样的项目,当我触摸它时,它会打开另一个 activity。可以吗?
您应该创建带有首选项的设置 - "listview" 的项目并为它们设置操作:对您的其他设置活动的意图。
private void createRateAppPrefListener() {
Intent marketIntent = getMarketIntent(mContext);
String rateAppKey = getString(R.string.pref_rate_app_key);
Preference rateAppPref = findPreference(rateAppKey);
if (rateAppPref != null) {
rateAppPref.setIntent(marketIntent);
}
}
private Intent getMarketIntent(Context context) {
String appPackageName = context.getPackageName();
Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName));
marketIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
return marketIntent;
}
不久
Intent intent = ...
Preference pref = findPreference(getString(R.string.your_pref_key));
pref.setIntent(intent);
Youtube 偏好,例如
更新: 它不是列表视图或列表项,它是标准首选项,在 xml 文件
中定义<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<Preference
android:key="@string/pref_rate_app_key"
android:summary="@string/pref_rate_app_summary"
android:title="@string/pref_rate_app_title" />
...
但它可以更简单
<Preference
android:summary="@string/pref_licenses_summary"
android:title="@string/pref_licenses_title">
<intent android:action="com.mdhelper.cardiojournal.view.activities.LicensesActivity" />
</Preference>
只需在您的首选项中添加意图定义xml