問題タブ [simpleadapter]
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.
android - SimpleAdapter を使用して複数列の ListView から単一のフィールドを取得する
SimpleAdapter を使用して 2 つのフィールドを持つリストを作成した ListActivity があります。値のペアは Map を使用して格納され、リストは ArrayList です。これには onItemClickListener があります。リスト エントリを選択すると、ペア、つまり 2 つの値が取得されます。これらの値の 1 つだけを取得する必要があります。
たとえば、リスト アイテムが "John" の場合、 "123" . リストからエントリを選択した後、文字列に「123」を格納したい
コード スニペットは次のとおりです。
android - シンプルなアダプターをリストビューに設定するには?
リスト ビューに arraylist を追加する際に問題が発生しました。ここで問題について説明します。ここで何が問題なのか教えてください。以下の xml ファイルに示すように、3 つの線形レイアウトがあり、中央のレイアウトにはリスト ビューがあります。 . `
配列アダプターを使用してリストにアイテムを追加しようとすると、うまく機能します..しかし、リストアダプターでは機能しません。クラッシュしています。
誰かがここに何が欠けているか教えてもらえますか?
android - リストで間違ったアイテムが選択されました
simple_items_list_2レイアウトを使用して2アイテムリストを表示するSimpleAdapterを備えたListActivityがあります。HashMapのArrayListはアイテムを保持します。
リストには、異なるからのUDPパケットとして受信したデータを保持する必要があります。したがって、これらのパケットが受信される別のスレッドがあります。そこから、ハンドラーを使用して、受信したデータを送信し、アイテムをリストに追加します。
これでパケットを正しく受信し、リストも生成されます。ただし、たとえばアイテムBを選択すると、アイテムAが選択されることがあります。
コードスニペットは次のとおりです。
OnCreate()で、
スレッドからの内容を含むメッセージを受け取った後のハンドラーのコード:
データを配置するHashMap関数:
何か助けはありますか?
android - SimpleAdapter で ImageLoader クラスを使用して ImageUrl から ImageView を表示するには?
JSONを解析し、名前やその他の詳細を表示する次のクラスがありますが、ここではリストビューで言及していません。
ShowViewActivity.java
次の ImageDownloader クラスを実装して、Web URL から画像を表示したいと考えています。
ImageDownloader.java
BaseAdapter を拡張する lazyload の例が表示されますが、ここでは SimpleAdapter を拡張するカスタム アダプター名 myAdapter を使用していますか?
この ImageLoader クラスを実装して、Web イメージ URL からイメージビューを表示する方法は?
android - SimpleAdapterをサブクラス化し、getViewを上書きすると、bindView()で問題が発生します
SimpleAdapterをサブクラス化し、位置に基づいて色を変更すること(および要素をより美しく、互いに区別できるようにする他のオプション)を試してみたかったのですが、getViewメソッドを上書きするのに問題があります。SimpleAdapterクラスの元のgetViewメソッドで呼び出されるメソッド(createViewFromResource)からコードをコピーしたところ、コードは次のようになりました。
元のアダプタソースからの95%のコピーペーストであると言ったので、ここではゲームを壊すものは何もありません。サブクラスでこれらにアクセスできないため、スーパークラスで宣言されたプライベート変数の代わりにコンストラクタからいくつかの変数を取得しました。私の問題は、ビューが返される直前に呼び出されるbindViewメソッドです。Eclipseはこれが何をしているのかについてのヒントを私に与えておらず、私のサブクラスからもそれを呼び出すことができないようです。
メソッドbindView(int、View)は、ChangingColorAdapter型に対して未定義です。
元のソースからコピーしたものの、上記のコードを使用すると、これが得られます。私には少し奇妙に思えます。私はAPIレベル8(2.2)でプログラミングしていて、ソースを添付しています。SimpleAdaptersの元のソースを見ると、エディターはbindView呼び出しの行き先を教えてくれませんが、エラーは発生しません。
ここで何か問題がありましたか、それともこの問題の原因は何ですか?bindViewメソッドに関するドキュメントや説明が見つからないようです。ほとんどの場合、カーソルアダプターからの実装例です。どんなヒントも素晴らしいでしょう。
乾杯
android - SimpleAdapter のフィルタリング時の IndexOutOfBoundException
SimpleAdapter
背景色の変更、カスタム ビュー、フィルタリングなどの追加機能を追加するためにサブクラス化しました。バックグラウンドはうまく機能していますが、フィルターはそうではありません。アダプターが提供するものを使用してSimpleFilter
もまったく問題ないので、ソースからメソッドをコピーしてアダプターに入れました。何も触れていませんがIndexOutOfBoundsException
、検索語を入力すると が表示されます。通常は 2 番目または 3 番目の文字にあります。
クラス全体をコピーしましたが、興味深い部分は で、CustomFilter
bindView
うまく機能しgetView
ています。変更されたフィルターを実装した後、機能しなくなります。例外は最初の行のメソッドの data.get(position) によって引き起こされますbindView
が、問題はフィルターでなければなりません。
android - SimpleAdapterによって入力されたListViewから行を操作します
以下を使用してListViewにデータを入力します。
ステータスが「0」のListView行の背景色を変更したいのですが。
何か案は?
NEW:更新されたコードは次のとおりです-はるかに優れています(JSONArrayから文字を手動で切り取らなければならない部分を除いて..eww ..)
android - 行の名前を知ってスピナー行を取得するにはどうすればよいですか?
「アイコン」と「名前」の2列のリストを入力する単純なAndroidスピナーがあります。これは完璧に機能します。
「名前」を知っているだけで、リストから行を取得するにはどうすればよいですか?スピナーのIDも位置もわかりません!
ありがとう!
android - SimpleAdapter.ViewBinderの使用方法は?
複雑なレイアウトのリストがありますR.layout.menu_row
。ProgressBar
とテキストフィールドで構成されます。私が使用するアダプター:
アダプターはそれ自体で処理する方法を知っていますTextViews
が、そうではないProgressBars
ので、複雑なデータバインダーを作成しました。
今、私は関数内のマッピングを埋めるのに行き詰まっています。文字列の値をprogress
のsetProgress
メソッドに設定する必要がありProgressBar
ます。progress
しかし、文字列と。へのハンドルがありませんProgressBar
。
android - SimpleAdapter の ViewBinder の理解を深める
の行定義の一部である4 TextViews
、 2 ImageViews
、 2 Buttons
、および 2 のウィジェットがありますListView
。データは XML とSimpleAdapter
. これらにアクセスするには、カスタム クラスで rTextViews
を実装し、 . これは機能し、動的に変更したい 2 つは で処理されます。私が混乱しているのは、他の 2 つの TextViews が渡されない理由です。これは、実行スレッドが 2 回だけ入るブレークポイントを設定することに基づいています。4回以上見る予定だった?ViewBinde
setViewValue
TextViews
setViewValue
setViewValue
setViewValue
これがブレークポイントを設定した場所です。
の xml 宣言TextViews
(1 は表示され、4 は表示されません):
要約すると、実行がオーバーライドに2回しか入力されず、たまたま更新したい2つだけになるのはなぜですか?
追加の読書と演繹的推論を通じて、さらにいくつかの情報が明らかになりました。私の考えでは、ListView
行内のビュー XML は通過しますViewBinder
が、それは間違っていました! 私が理解できることViewBinder
から、 を経由して DataAdapter に接続しsetViewBinder
ます。DataAdapter には、データを取り込むために使用するビューが示されているため、2 つだけが表示されていたことは理にかなっています。私はそれに2つだけを明らかにしていました。
次のスニペットでは、入力プロセスに関与するビューを指定し、それらを DataAdapter のコンストラクターに渡します。
これは理にかなっているように思えますが、私の演繹的推論が正確かどうかはわかりません。さらに情報が見つかり次第更新します。