带有SharedReferences的Android小部件textview
我为我的应用制作了一个包含4个文本视图的小部件 这4个文本视图应该从sharepreferences接收文本 这个小部件工作正常,但是获取数据的问题仍然存在 这是小部件类代码带有SharedReferences的Android小部件textview,android,widget,textview,sharedpreferences,Android,Widget,Textview,Sharedpreferences,我为我的应用制作了一个包含4个文本视图的小部件 这4个文本视图应该从sharepreferences接收文本 这个小部件工作正常,但是获取数据的问题仍然存在 这是小部件类代码 import android.app.PendingIntent; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.ComponentName; imp
import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.widget.RemoteViews;
import android.widget.*;
import android.content.*;
import android.preference.*;
import android.gesture.*;
public class Widget extends AppWidgetProvider{
TextView b95,b98,mred,mgreen;
public void onReceive(Context context, Intent intent)
{
LoadPreferences();
String action = intent.getAction();
if (AppWidgetManager.ACTION_APPWIDGET_UPDATE.equals(action))
{
RemoteViews views = new RemoteViews(context.getPackageName(),
R.layout.widget);
AppWidgetManager
.getInstance(context)
.updateAppWidget(
intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS),
views);
}
}
private void LoadPreferences()
{
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
String p95 = sharedPreferences.getString("p2p95", "");
String p98 = sharedPreferences.getString("p2p98", "");
String pred = sharedPreferences.getString("p2pred", "");
String pgreen = sharedPreferences.getString("p2pgreen", "");
b95.setText(p95);
b98.setText(p98);
mred.setText(pred);
mgreen.setText(pgreen);
}
}
首先,我对loadpreferences方法有一个问题,他们说我不能使用它
其次,我想所有的加载首选项都是错误的
那么解决办法是什么呢
有什么帮助吗
String Harneet="hi";
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("Name",Harneet);
editor.commit();
在需要值之后,请使用下面的代码
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
String p95 = sharedPreferences.getString("p2p95", "Harneet");