2011年1月23日日曜日

Android Tips

今後も再利用しそうな実装の簡単なメモ書き

アンドロイド機種端末の取得

String model = android.os.Build.MODEL;

とすると、model変数に端末名が設定される。

ListViewでグループ分けをする

isEnabledメソッドを利用する


class SampleActivity extends ListView {

// ListViewの処理

class SampleList extends ArrayAdapter<ArrayList<String>> {

private Context mContext;
private ArrayList<ContentsCategoryBean> list;

public ContentsCategoryList(Context context, int textViewResourceId,
ArrayList<ContentsCategoryBean> list) {
super(context, textViewResourceId);
this.mContext = context;
this.list = list;
}

@Override
public int getCount() {
return this.list.size();
}

@Override
public long getItemId(int position) {
return Long.valueOf(this.list.get(position).id);
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {

if (!isEnabled(position)) {
// 処理false
} else {
// 処理true
}

return row;
}

@Override
public boolean isEnabled(int position) {

// 処理
// trueとfalseに分岐して返す

return true;
}
}
}


isEnabledメソッドの中で、列のデータによるグルーピングを行うのがポイント。

TABを画面下に設定する

AndroidのTABを画面下に設定するやり方です。
layoutの構築は、ここではRelativeLayoutを使います。LinerLayoutでも可能ですが、私は使わないのでここでは記述しません。



<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_above="@android:id/tabs" />

<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" />

</RelativeLayout>
</TabHost>



ポイント
・FrameLayoutタグはコンテンツの位置なので、TabWidgetの上に配置する
・Tabを画面下に配置するのだから、TabWidgetタグは当然FrameLayoutの下になる。

以上で~す。

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...