私のアプリInfiniteGalleryクラスでは、ボタンを押すと、任意の画像をSDカードに保存して、最後に保存された番号を取得し、保存された画像の最後の番号を保存して、すべての画像を順番に保存できますが 、SharedPreferencesを追加すると、赤い線が表示されますの下のエラー:
1- SharedPreferences savedNumber = getSharedPreferences(PREFS_NAME, 0);
(:getSharedPreferences の下)。
エラー: メソッド 'getSharedPreferences'(string,int)' を作成します
2- SharedPreferences saveNumber = getApplicationContext().getSharedPreferences(PREFS_NAME, 0);
(:getApplicationContext の下)。
エラーは : メソッド 'getApplicationContext()' を作成します
私はそれを修正しようとしましたが、icant、アドバイスや助けをいただければ幸いです、ありがとう
私のコード:
View vi=convertView;
final ViewHolder holder;
if(convertView==null){
vi = inflater.inflate(R.layout.gallery_items, null);
holder=new ViewHolder();
holder.text=(TextView)vi.findViewById(R.id.textView1);
holder.image=(ImageView)vi.findViewById(R.id.image);
holder.button=(Button)vi.findViewById(R.id.button_save);
bm = BitmapFactory.decodeResource( mContext.getResources(), images[itemPos]);
holder.image.setImageBitmap(bm);
holder.button.setOnClickListener(new OnClickListener() {
private Bitmap bm;
private String PREFS_NAME;
public void onClick(View arg0) {
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/saved_images");
if(!myDir.exists()){
myDir.mkdirs();}
SharedPreferences savedNumber = getSharedPreferences(PREFS_NAME, 0);
int lastSavedNumber = savedNumber.getInt("lastsavednumber",0);
lastSavedNumber++;
String fname = "Image-"+lastSavedNumber+".png";
File file = new File (myDir, fname);
if (file.exists ()) {file.delete (); }
try {
FileOutputStream out = new FileOutputStream(file);
bm.compress(Bitmap.CompressFormat.PNG, 100, out);
//Your Bitmap from the resouce
out.flush();
out.close();
Toast.makeText(mContext, "Saved", Toast.LENGTH_LONG).show();}
catch (Exception e) {
e.printStackTrace(); }
SharedPreferences saveNumber = getApplicationContext().getSharedPreferences
(PREFS_NAME, 0);
SharedPreferences.Editor editorset = saveNumber.edit();
editorset.putInt("lastsavednumber",lastSavedNumber);
editorset.commit();
Toast.makeText(mContext, "button clicked", Toast.LENGTH_LONG).
show();}});
vi.setTag(holder);}
else holder=(ViewHolder)vi.getTag();
holder.text.setText(name[itemPos]);
final int stub_id=images[itemPos];
holder.image.setImageResource(stub_id);
return vi; }