我試圖從列表中添加值到SharedPreferences,這個想法是當用戶點擊一個按鈕時列表項被添加到收藏夾頁面,但是我不是能夠這樣做,我相信問題是因爲我使用自定義的ListViewAdapter,這個listview允許我將一個列表項向左滑動,以便它顯示按鈕。 Like so 我不能把SharedPreferences在這個類的工作,這就是我:從自定義ListViewAdapter向SharedPreferences添加值
public class ListViewAdapter extends BaseSwipeAdapter {
ArrayList<HashMap<String, String>> array = TodasAsCategorias.getListaCategorias();
String Designacao, K_PRODUTO;
public static final String favoritos = "favoritos";
private Context mContext;
public ListViewAdapter(Context mContext) {
this.mContext = mContext;
}
@Override
public int getSwipeLayoutResourceId(int position) {
return R.id.swipe;
}
@Override
public View generateView(final int position, ViewGroup parent) {
final View v = LayoutInflater.from(mContext).inflate(R.layout.list_item_cat, null);
SwipeLayout swipeLayout = (SwipeLayout) v.findViewById(getSwipeLayoutResourceId(position));
v.findViewById(R.id.imgBtnFav).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Designacao = (array.get(position)).get("Designacao");
K_PRODUTO = (array.get(position)).get("K_PRODUTO");
Toast.makeText(mContext, "Adicionado aos favoritos", Toast.LENGTH_LONG).show();
SharedPreferences.Editor editor = getSharedPreferences(favoritos, MODE_PRIVATE).edit();
editor.putString("Designacao", Designacao);
editor.apply();
}
});
return v;
}
/*....*/
}
它不斷給我同樣的錯誤,無法解析法「getSharedPreferences(?java.lang.String中) 「而無法解析符號‘MODE_PRIVATE’
真正需要幫助這裏,找不到網頁任何事情來幫助我:/
把下生成視圖 –
@BasilBattikhi怎麼會這樣的onClick方法?在生成視圖之外? – ALBPT