問題タブ [android-viewbinder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
20474 参照

android - Androidでローカライズされた形式で日付を表示する

現在、Android用の最初のアプリを作成しています。私が問題を抱えているのは、に関連する日付の保存とローカライズされた表示ですSimpleCursorAdapterSQLitedatabase 3つのテーブルへのアクセスをカプセル化するクラスがあります。このクラスは、すべての日付をISO形式( "yyyy-MM-dd")で保存します。日付値がデータベースから読み取られて画面に表示されるときに、ローカライズされた形式でフォーマットする必要があります。これが私が思いついたアプローチです。を使用ViewBinderしてフォーマットを行います。

getDateFormatView()SimpleDateFormatから読み取られるパターンを持つオブジェクトを作成しますstrings.xml。定数パターンを使用して構築さparseDatabaseDate()れたデータベースからの日付の解析を行います。SimpleDateFormatyyyy-MM-dd

このコードは問題なく機能しますが、それを行うためのより良い方法があるかどうか疑問に思っています。私が好きではないのは、私が必要としていることです:

  • 2つのSimpleDateFormatオブジェクト(1つはparseDatabaseDate()からの日付文字列を解析するために使用され、もう1つはSQLiteDatabase値をフォーマットするために使用されます)
  • java.util.Date作成されてすぐに破棄されるオブジェクト
  • (私の意見では)かなり多くの定型コード。

だから私は尋ねています:ローカライズされた形式で日付を表示するより良い方法はありますか?

0 投票する
2 に答える
3111 参照

android - ViewBInderのcolumnIndexを理解するのに役立つものもあります

コンテキストなしで質問を見たいだけの場合は、一番下にスキップしてください

私が構築しているAndroidアプリには、3つの列を持つ単純なテーブルがあります。

_id INTEGER PRIMARY KEY ...、名前TEXT、INT

このテーブルはと呼ばれcategoriesます。私は自分のカテゴリをデータベースからロードし、次のようSimpleCursorAdapterに使用するためにそれらをにフィードします。Spinner

ViewBinderカテゴリ名をスピナーアイテムのテキストにし、色を背景色にしたいので、カスタムを設定しました。私ViewBinderはこのように見えます:

これが私の質問です(ついに)

setViewValueメソッドで、columnIndexは何をすることになっていますか?ドキュメントには「データがカーソル内にある列」と記載されていますが、 setViewValueを使用してデバッグすると、3回ヒットし、columnIndexは常に1です。

from配列のエントリごとに、デバッガーがsetViewValue1に1回入ることを期待していました。最初にcolumnIndexがあり、次に2。または、クエリ結果の列ごとに1回ずつです。

上記のコードは機能しますが、NAME_COLUMN定数とCOLOR_COLUMN定数が原因で、目的の機能を取得できます。カスタムViewBindersの経験が豊富な人から、 setViewValueとそのパラメーターの説明を聞いてみたいと思います。

0 投票する
1 に答える
398 参照

android - アダプターで動的に作成されたオブジェクトへのアクセス

aと aを使用して、とでダイナミックListViewを作成しました。TextViewSpinnerSimpleAdapterViewBinder

Spinnerユーザーが選択した値にアクセスするにはどうすればよいですか?

内のスピナーへの参照を作成する必要があると思いますが、ViewBinder方法がわかりません。私はこれを試しましたが、うまくいきません:

0 投票する
1 に答える
4924 参照

android - SimpleCursorAdapterのデータの変更

私はListActivity、一度に1つのチャンネル/1日のテレビ番組を表示するTVガイドアプリに取り組んでいます。アイテムにを使用しRelativeLayoutていますが、次のように表示したいと思います。ListViewListView

ListView次のコードを使用してアイテムのデータを取得します。

私の問題は、start_timeフィールドがdatetime次の形式であるということです。

だから私が得るものはこれです:

私がやりたいのは、SimpleDateFormat( )を使用して上記をフォーマットすることです。これにより、フィールドの一部"HH:mm"のみが取得されます。hour:minutestart_time

私はSimpleCursor.ViewBinderそれが私が望むものかもしれないことを示唆するインターフェースを見つけましたが、それを使用する方法を理解することができません。私が正しければViewBinder、それを使用する方法についてのサンプルコードへのいくつかのポインタをいただければ幸いです。start_timeそれ以外の場合、単にHH:mmフォーマットを表示するようにフィールドを変更するには、他にどのようにすればよいですか?

0 投票する
1 に答える
351 参照

android - ViewBinder の問題

いくつかの画像を表示する必要がありListView、次のコードを使用しています。

問題があります: リストには 4 行のスペースがあり、下にスクロールすると、5 行目の画像が最初の行の画像と同じで、後続の画像も間違っています。

誰かが理由を教えてもらえますか?

0 投票する
1 に答える
955 参照

android - ExpandableListActivity の ContextMenu に関する問題

ExpandableListActivityを登録しましたContextMenu。私がやろうとしているのContextMenuは、押されたグループの子リスト項目のデータを保存することです。によると:

vコンテキスト メニューが構築されているビューです。したがって、このビューはクリックしたリスト項目のビューである必要がありますが、そうではなく、子リストの最初のリスト項目を参照しています。コンテキスト メニューが作成されたリスト項目のビューを返す必要があると思いますが、ここではそうではありません。これが私のコードです:

誰かがこれに光を当てることができますか?

編集:

のコードExpandableListAdapter:

のコードViewBinder:

0 投票する
1 に答える
207 参照

android - 変数を ViewBinder に渡す

私とデータベースへのカーソルアダプターとのViewBinder間の仲介者として機能している があります。ListViewこのデータが表示されているコンテキストに応じて、ViewBinderさまざまなことを行う必要があります。

例として、存在するすべてのタスク グループのタスクを表示するタスク管理アプリケーションを取り上げます。この場合、特定のタスク グループの 1 つのタスクを表示していた場合、アプリはリスト ビューにタスク グループの名前を表示したくない場合があります。リスト ビュー アイテムには非表示のフィールドを含めることができViewBinder、タスク グループの名前をフィールドにマップし、必要に応じて表示するように設定することができます (メイン アプリケーションの指示に従って)。

私の質問はViewBinder、それが表示されているコンテキストをどのように伝えれば、どのように動作するかを判断できるのでしょうか?

これはおそらく多くの異なる を実装することで実現できると思いますが、これには多くのコードを複製する必要があり、特定のパラメーターを渡すだけViewBindersの単一で行うことをお勧めします。ViewBinder

0 投票する
3 に答える
1090 参照

android - ViewBinderのListView行からLinearLayoutの背景を変更できますか?

いくつListViewかの要素があり、データベース内のタイプに応じて行の背景を変更したいと思います。私が得たのはSimpleCursorAdapterインスタンスであり、それは関数adapter.setViewBinder(...)です。LinearLayoutしかし、行のにアクセスできないようです。コードは次のとおりです。

0 投票する
1 に答える
163 参照

android - 多くのカスタム動作を持つ ListView にカーソルを適応させるにはどうすればよいですか?

私は現在SimpleCursorAdapter、カスタムで を使用ViewBinderして、ListView.

ただし、私のリストが画面のサイズよりも長く、ユーザーが上下にスクロールすると、システムが間違った行に間違った色を付けるなどの原因になります。私の理解では、これはシステムの再利用の問題です。here で説明されているように、スクロールの最適化として表示します。

私はすべて最適化を望んでいますが、アイテムを適切に表示する必要がありますListView。これについて正しい方法は何ですか?

私の考えでは、 a CursorAdapter、できれば aを実装できると思いますが、そのSimpleCursorAdapter方法がわかりません。または、私のテキストの色をデフォルトに戻すだけViewBinderですか?