2011-07-04 8 views
0

検索結果のリストを作成しようとしていますが、スクロール可能である必要がありますが、結果をクリックして別のアクティビティに移動する必要があります。ここで私のコードは、任意のヘルプが評価されています。ScrollViewをクリック可能なTableLayoutで操作できますか?

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:scrollbars="vertical" android:layout_height="fill_parent" 
android:layout_width="fill_parent"> 
<TableLayout android:id="@+id/resultsLayout" 
    android:layout_height="match_parent" android:layout_width="fill_parent" 
    android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" 
    android:scrollbars="vertical"> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="twoLine" android:id="@+id/tlli1"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="MUDD PUPPIES SELF SERVE DOG " android:ellipsize="none" 
       android:scrollHorizontally="false"/> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="20091345" /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli2"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="MUDD, ANGELA G " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="2008022979 3383 6" /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli3"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="GRABAU, ANDREW S " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="2011003340 3771 110 " /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli4"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="S M E T INC " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="1987016628 652 590 " /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli5"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="A GOOD START INC " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="20040649" /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli6"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="AGUILAR, JOHN D " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="2001015672 1747 306 " /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli7"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="THEIS, ARLENE C " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="1998020639 1439 544 " /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli8"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="R-E INVESTMENT CO " /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="1985005167 530 925 " /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli9"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="Man" /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="Machine" /> 
     </TwoLineListItem> 
    </TableRow> 
    <TableRow> 
     <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" 
      android:minHeight="?android:attr/listPreferredItemHeight" 
      android:mode="oneLine" android:id="@+id/tlli10"> 
      <TextView android:id="@android:id/text1" android:gravity="left" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:text="Man" /> 
      <TextView android:id="@android:id/text2" android:gravity="right" 
       android:layout_width="wrap_content" android:layout_height="wrap_content" 
       android:layout_below="@android:id/text1" android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="Machine" /> 
     </TwoLineListItem> 
    </TableRow> 
</TableLayout> 

答えて

0

あなたはむしろ自分自身のScrollViewを転がすよりも、タスクのこの種のためにListViewコントロールを使用することを検討すべきです。

編集:

私はあなたがこの間違った方法に近づいていると思います。あなたはXMLで検索クエリの結果をハードコーディングしていますか?それは、あなたが本当に検索クエリを全く行っていないことを私に伝えます。

何が配列またはデータベース内のデータを持った後、適切に照会しArrayAdapterまたはCursorAdapter経由ListActivityにそれを渡してやるべき。 onListItemClicked()ファンクションを設定すると、適切なデータを含むインテントをアクティビティに送信することが可能になります。

しかし、あなたがこのより最適なソリューションからかなり遠いように見えるとすれば(私はあなたにそれを探検することを非常に推薦しますが)。手動でたくさんのものを設定しなければなりません。

ScrollViewレイアウトを使用するアクティビティでは、複数のOnClickListenerを定義し、それらをScrollviewの適切な要素にバインドする必要があります。したがって、次のようなものがあります。

TwoLineListItem tli1 = (TwoLineListItem) findViewById(R.id.tlli1); 
tli1.setOnClickListener(new OnClickListener() { 
    public void onClick(View v) { 
    Intent intent = new Intent(getBaseContext(), YourResultDetailActivity.class); 
    intent.putExtra("foo", 1); 
    startActivity(intent); 
    } 
}); 

10個のアイテムごとに繰り返します。 YourResultDetailActivityはインテントからエクストラを取得し、それを使用して正しいデータを表示する必要があります。

+0

私の問題は、スクロールしてクリックする代わりに、結果をスクロールするだけで、クリックできないことです。 – digipen79

+0

完全な答えで編集しました。 – Estel

+0

申し訳ありませんが、私はクライアントに見せるためにこの情報をハードコードしたと言わなければなりませんが、後で – digipen79

関連する問題