我想从一个发射系统的位置设置Intent
。 我知道,编程它是这样的
Intent viewIntent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(viewIntent);
但我需要从一个的XML去做Preference
。 我尝试这样
<Preference
android:title="@string/pref_title" >
<intent android:action="android.settings.ACTION_LOCATION_SOURCE_SETTINGS" />
</Preference>
但它不工作,我总是得到一个ActivityNotFoundException
。 我怎样才能启动,从一个XML意图系统位置设置?
您可以创建一个: PreferenceActivity
将代表您的喜好,然后您可以分配onClick
您的喜好是这样的:
Preference goToLocationSettings = (Preference) findPreference("goToLocationSettings");
goToLocationSettings.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
Intent viewIntent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(viewIntent);
return true;
}
});
你会需要一个键分配给在XML文件中的设置:
<Preference
android:key="goToLocationSettings"
android:title="@string/pref_title" />
试试这个代码:
<PreferenceScreen
android:key="key_location"
android:summary="location settings"
android:title="Open location settings">
<intent android:action="android.settings.ACTION_LOCATION_SOURCE_SETTINGS"/>
</PreferenceScreen>