『アンドロイド開発に必要な50のテクニック』読書ノート
『アンドロイド開発に必要な50のテクニック』を見て役に立つテクニックを記録します.
includeラベル使用上の注意事項
レイアウトで指定されたandroid:layout_*をラベルに上書きする場合はプロパティ、ラベルにandroid:layout_を同時に指定する必要がありますwidthとandroid:layout_heightプロパティ、レイアウトを含むlayoutを指定できます.widthとlayout_heightプロパティはいずれも0 dpであり、レイアウトを含むユーザがラベルにlayout_を指定することを目的としている.widthとlayout_Heightプロパティは、ユーザーがこの2つのプロパティを指定しないと、デフォルト値が0になり、見えません.
ViewStubラベル
埋め込まれたビューの参照を取得する場合、inflate()メソッドは直接参照を返し、findView()メソッドの再呼び出しを回避できます.
カスタムレイアウトカスタムプロパティの取得
finallyでTypeArrayを解放できます
SpannableString
onCreateでViewの幅と高さを得る
onCreateでgetWidth()とgetHeight()を呼び出すと0が返され、Viewのpostメソッドで幅と高さを取得できます.
パブリッシュ時にログ文を削除
混同ファイルに次の文を混同して削除します.
使用依頼
アダプタの削除などの操作の実現はアダプタでは実現されず、アダプタは操作呼び出しインタフェースに対応する方法を提供し、その実現はActivityで実現される.
includeラベル使用上の注意事項
レイアウトで指定されたandroid:layout_*をラベルに上書きする場合はプロパティ、ラベルにandroid:layout_を同時に指定する必要がありますwidthとandroid:layout_heightプロパティ、レイアウトを含むlayoutを指定できます.widthとlayout_heightプロパティはいずれも0 dpであり、レイアウトを含むユーザがラベルにlayout_を指定することを目的としている.widthとlayout_Heightプロパティは、ユーザーがこの2つのプロパティを指定しないと、デフォルト値が0になり、見えません.
ViewStubラベル
<ViewStub>
android:id="@+id/view_stub"
android:inflateId="@+id/inflateId"
</ViewStub>
View view=findViewById(R.id.view_stub)
view.setVisibility(View.VISIBLE);
埋め込まれたビューの参照を取得する場合、inflate()メソッドは直接参照を返し、findView()メソッドの再呼び出しを回避できます.
カスタムレイアウトカスタムプロパティの取得
finallyでTypeArrayを解放できます
TypeArray a=context.obtainStyledAttribute(attrs,R.styleable.Custom);
try{
}finally{
a.recycle();
}
SpannableString
Spannable spannable=new SpannableString("");
spannable.setSpan(new BackgroundColorSpan(...));
onCreateでViewの幅と高さを得る
onCreateでgetWidth()とgetHeight()を呼び出すと0が返され、Viewのpostメソッドで幅と高さを取得できます.
パブリッシュ時にログ文を削除
混同ファイルに次の文を混同して削除します.
-assumenosideeffects class android.util.Log {
public static *** d(...);
}
使用依頼
アダプタの削除などの操作の実現はアダプタでは実現されず、アダプタは操作呼び出しインタフェースに対応する方法を提供し、その実現はActivityで実現される.