2

Android 用のアプリケーションを作成していますが、ImageButtonクリックしたときの可視性を保存するのが困難です。他のトピックを検索しましたが、解決策が見つかりませんでした。

たとえば、クリックすると白くなるボタンがあり、アクティビティまたはビューを切り替えるときにその可視性を保存したい:

OnClickListener oclFavourite = new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        ImageButton favWhite = (ImageButton) findViewById(R.id.favoriwhite);
        ImageButton favori = (ImageButton) findViewById(R.id.favorigrey);
        favWhite.setVisibility(View.VISIBLE); //The white button I want to save
        favourite.setVisibility(View.INVISIBLE); //The initial button
    }
};
favori.setOnClickListener(oclFavori);

関数を勉強しようとしましたがSharedPreferences、保存には成功しましたが、またはTextViewの進め方がわかりません。ImageButtonImageView

4

3 に答える 3

3

可視性と非可視性を切り替えるたびに、ブール値フラグを切り替えることができます。そして、フラグを に保存しSharedPreferencesます。このようなもの

private boolean flag = true;

private void setvisible(){
    flag = true;
    yourView.setVisibility(View.VISIBLE); 
    // save the flag
}

private void setInvisible(){
    flag = false;
    yourView.setVisibility(View.INVISIBLE); 
    // save the flag
}

今オンクリエイトで

onCreate(Bundle b){
    .............
    if(flag)
       // make it visible
    else
       // make it invisible
}
于 2013-10-07T10:59:32.573 に答える
2

これを使用して可視性を保存するには、sharedpreference を使用します。isButtonVisible = false;

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
Editor edit = sp.edit();
edit.putBoolean("BUTTON", false);
edit.commit();

そして、これを使用してロードします

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
sp.getBoolean("BUTTON",true);

そして、次のような条件を付けます

if(isButtonVisible==true){
    favWhite.setVisibility(View.VISIBLE);
}else{
    favWhite.setVisibility(View.INVISIBLE);
}

他に質問があれば聞いてください。

于 2013-10-07T11:00:51.487 に答える