THis method can help get result from intent launched from preference screen.
Do not mention intent while creating preference like I did in above
code.. Mention intent on OnPreferenceClickListener and then do
StartActivityForResult()
// Intent preference
DevicePref =
getPreferenceManager().createPreferenceScreen(this);
// Show a Screen with list of Devices Discovered
DevicePref.setOnPreferenceClickListener(onPreferenceClick);
DevicePref.setTitle("Select Device");
DevicePref.setSummary(mSelectedDevice);
deviceOptionsCat.addPreference(DevicePref);
OnPreferenceClickListener onPreferenceClick = new
Preference.OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
if (preference ==DevicePref )
{
Intent i = new
Intent(DevuiceOptions.this,ListDevices.class);
DevicePref.setIntent(i);
startActivityForResult(i,CHOOSE_DEVICE);
}
return true;
}
};
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent data)
{
switch (requestCode) {
case Constants.CHOOSE_DEVICE:
{
if (data!=null )
{
Bundle b = data.getExtras();
mSelectedDevice = (String) b.get("Name");
UpdatePreferences();
}
}
}
}
How to get results from intent launched from preference screen...
posted by :
learningandroid
Monday, August 2, 2010
Subscribe to:
Post Comments (Atom)
0 comment:
Post a Comment