私は描画可能なフォルダとstring.xmlをからスピナーまたはフラグアイコンおよび通貨名のリストビュー(私はsqliteの中で自分のR IDを保存し、例えばR.drawable.aedとR.string.aedを持っています)正しい方法は、sqliteの文字列とDrawableリソースを保存するには?
その後、私は新しい描画可能に挿入し、
私の旗のアイコンシフトをcxx.png例えば、それらのいくつかは、他の画像ではなく、旗のアイコンを変更します。これは私の携帯電話でアプリを更新する場合に発生します。私はそれをインストールするか、または削除し、すべての作業を正常にインストールします。
私のプログラム内のsqliteは、のRのIDを理解しています。 drawableまたは文字列を追加または削除すると、RはID番号が変更されますが、私のsqliteテーブルには古い番号R IDが保存されます。
毎回DB_VERSIONを増やして、新しい文字列とドロワーブルを追加または削除するたびに、すべて IDをsqliteに更新するメソッドを作成しようとすることができます。 より簡単なソリューションはありますか?
これは私のアダプタのいずれかです。string.xmlを使用から文字列を保存するための
public class SpinnerCursorAdapter extends CursorAdapter {
public SpinnerCursorAdapter(Context context, Cursor cursor) {
super(context, cursor, 0);
}
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
View view = LayoutInflater.from(context).inflate(R.layout.spinner_item, parent, false);
ViewHolder viewHolder = new ViewHolder(view);
view.setTag(viewHolder);
return view;
}
@Override
public void bindView(View view, Context context, Cursor cursor) {
ViewHolder viewHolder = (ViewHolder) view.getTag();
int flagIconId = Integer.valueOf(cursor.getString(5));
viewHolder.flagIcon.setImageResource(flagIconId);
String currencyName = cursor.getString(4);
viewHolder.currencyName.setText(currencyName);
viewHolder.currencyCharCode.setText(cursor.getString(1));
}
private static class ViewHolder {
final ImageView flagIcon;
final TextView currencyName;
final TextView currencyCharCode;
private ViewHolder(View view) {
flagIcon = (ImageView) view.findViewById(R.id.spinner_flag_icon);
currencyName = (TextView) view.findViewById(R.id.spinner_currency_name);
currencyCharCode = (TextView) view.findViewById(R.id.spinner_currency_char_code);
}
}
}
はい、あなたは間違いありません。 – Amy