カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

SDカードのパスを取得

String PATH = Environment.getExternalStorageDirectory().getPath();

環境変数からSDカードのパスを取得

// SDカードのパスを取得
public static String getExternalStoragePath() {
    String path;

    // Sumsung GALAXY Tab SC-01C 対応
    path = System.getenv("EXTERNAL_STORAGE2");
    if (path != null) return path;

    // MOTOROLA Photon ISW11M 対応
    path = System.getenv("EXTERNAL_ALT_STORAGE");
    if (path != null) return path;

    // その他機種
    return System.getenv("EXTERNAL_STORAGE");
}
2,734 views

res/drawableの画像の変更が反映されないとき

ビルドの際にbin/resディレクトリ以下にファイルがキャッシュされているので、
変更したい画像を削除します。

Eclipseでは[プロジェクト]-[クリーン]でキャッシュをキレイにできます。

4,171 views

CentOS6

http://kajuhome.com/centos6_inst.shtml

1,513 views

Activityの見た目をダイアログにする

Activity(画面)を簡単にダイアログにすることができます。
AndroidManifest.xmlのactivityタグに以下のように指定します。

android:theme="@android:style/Theme.Dialog"
1,916 views

設定画面の説明文を設定内容によって変更する

例としてEditTextPreferenceの設定がされていればSummaryに表示するようにします。

リスナーをimplementsする場合

public class Setting extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.pref);

        PreferenceScreen ps = getPreferenceScreen();
        EditTextPreference ep = (EditTextPreference)ps.findPreference("key");
        if(ep.getText() != null && !ep.getText().equals("")) ep.setSummary(ep.getText());
    }

    @Override
    protected void onResume() {
        super.onResume();
        getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
    }

    @Override
    protected void onPause() {
        super.onPause();
        getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
    }

    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {

        if(key.equals("key")) {
            PreferenceScreen ps = getPreferenceScreen();
            EditTextPreference ep = (EditTextPreference)ps.findPreference("key");
            if(ep.getText() != null && !ep.getText().equals("")) {
                ep.setSummary(ep.getText());
            } else {
                ep.setSummary("デフォルトのSummary");
            }
        }
    }

}

続きを読む…»

4,338 views