0
public class Boards : TabActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Tab);
TabHost.TabSpec spec;
Intent intent;
intent = new Intent(this, typeof(Today));
intent.AddFlags(ActivityFlags.NewTask);
spec = TabHost.NewTabSpec("today");
spec.SetIndicator("Today");
spec.SetContent(intent);
TabHost.AddTab(spec);
intent = new Intent(this, typeof(Tomorrow));
intent.AddFlags(ActivityFlags.NewTask);
spec = TabHost.NewTabSpec("tomorrow");
spec.SetIndicator("Tomorrow");
spec.SetContent(intent);
TabHost.AddTab(spec);
TabHost.CurrentTab = 1;
}
}
Tab.axmlExpandableListViewの下TabHost
<?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">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"></TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"></FrameLayout>
</LinearLayout>
</TabHost>
Today.csが
public class Today : ExpandableListActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
List<IDictionary<string, object>> parent = new List<IDictionary<string,object>>();
List<IList<IDictionary<string, object>>> child = new List<IList<IDictionary<string,object>>>();
External inst = new External();
var connection = inst.conn();
var c = connection.CreateCommand();
c.CommandText = "Select Distinct Store From Calls";
connection.Open();
SqliteDataReader dr = c.ExecuteReader();
if (dr.HasRows)
while (dr.Read())
{
Dictionary<string, object> pItem = new Dictionary<string,object>();
pItem.Add("Store", dr[0].ToString());
parent.Add(pItem);
}
dr.Close();
int cnt = parent.Count();
if (cnt > 0)
{
List<IDictionary<string, object>> children = new List<IDictionary<string, object>>();
foreach(IDictionary<string, object> d in parent)
{
c.CommandText = "Select CallNumber From Calls Where Store = '" + d.Values + "'";
dr = c.ExecuteReader();
while (dr.Read())
{
Dictionary<string, object> childItem = new Dictionary<string, object>();
childItem.Add("Call", dr[0].ToString());
children.Add(childItem);
}
dr.Close();
}
child.Add(children);
}
SimpleExpandableListAdapter adapter = new SimpleExpandableListAdapter(this, parent, Android.Resource.Layout.SimpleExpandableListItem1, new string[] { "Store" }, new int[] { Android.Resource.Id.Text1, Android.Resource.Id.Text2 }, child, Android.Resource.Layout.SimpleExpandableListItem2, new string[] { "Call" }, new int[] { Android.Resource.Id.Text1, Android.Resource.Id.Text2 });
SetListAdapter(adapter);
}
}
はタブがうまく作成追加が、私は、何もショーExpandableListViewActivityを育てる今日]タブをクリックした場合アップ。 Tab.axmlのLinearLayoutをRelativeに変更し、ExpandableListViewが表示されますが、最初の項目が今日のタブの上にあり、項目を展開しようとするとアプリがクラッシュします。
Tab.axmlはRelativeLayout