問題タブ [android-arrayadapter]
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 - カスタムArrayAdapterを正しく作成していますか?
私のListViewは正しく表示されますが、何らかの理由で追加と削除がおかしく、正しく機能しません。私は何か間違ったことをしていますか?
OnCreate()で設定します
見積もりアダプタプライベートクラス
リストからアイテムを削除します(これは機能しません、何もしません)
リストにアイテムを追加する(THIS WORKS)
これが私がシリアル化および逆シリアル化する方法です
android - スピナーの作成に関する問題
私が開発しているアプリでは、アラート ダイアログ ボックスにスピナーがあります。
スピナーは正常に動作しますが、配列をスピナーに追加するために次の行を追加すると、起動後数秒でアプリがクラッシュします。
私は何を間違っていますか?
これらの Android スピナーも少し複雑なようです。Android のドキュメントを参照せずに作成方法を思い出すことはできないと思います。
android - Androidで動的コンテキストメニューを作成するには?
メニューに「AAPL を削除」と表示させたい
アレイ アダプタから文字列 AAPL を取得しますが、このメソッドからアレイ アダプタのインデックスにアクセスする方法がわかりません。
android - ベクトルを arrayadapter に入れるにはどうすればよいですか?
私は現在のコードを持っています:
ベクトルを array_spinner に入れるにはどうすればよいですか?
ありがとうございました。
android - 現在選択されているリスト項目での Android Ellipsize マーキーの問題
私の質問- カスタム ListView にある TextView のテキストを、ListView でアイテムが選択されている場合にのみマーキー スクロールするようにします。リスト項目がフォーカスを失ったら、マーキーのスクロールを停止します。スクロールを機能させるには TextView を有効 ( setEnabled(true) ) に設定する必要があることはわかっていますが、アイテムが追加されたときにこれを行うと、それらはすべてスクロールします。起こります)。ListView のクリックハンドラーを使用してプログラムで設定して、TextView を有効に設定しようとしました ( setEnabled(true))、プライベート変数で現在選択されているアイテムを追跡し、逆に、新しいアイテムがクリックされたときに、以前のビューの TextView 有効化ステータスを false に設定します。これが理にかなっていることを願っています。これをよりよく説明する Java コードを次に示します。
これはうまくいきます。しかし、それは少し不格好です。たとえば、前のアイテムがディスプレイから離れた場合、オフになることはなく、リスト アイテムを選択すると、設定したカスタム listSelector プロパティがすべて失われます (以下を参照)。また、スクロールする TextView の背景項目が黒に変わるという奇妙な動作がいくつかありました (さらに、ListView の listSelector 全体が完全に消えます。Droid でキーパッドを使用しても、これは発生しません。正常に動作します。ただし、リスト項目が押されたときにこの機能をエミュレートしようとしているだけです.これを実現する方法については、ウェブ上であまり見つけていません.以下はスニペットとスクリーンショットです.
カスタム リスト ビューで ArrayAdapter にバインドした ListActivity があります。このアクティビティが関連付けられているコンテンツ ビューは次のようになります。
list_selector ドローアブルは次のようになります。
その Drawable は、リスト項目選択の栗色の背景色をペイントするための単純な 1x1 栗色のピクセルです。スペースを節約するために、カスタム ビューがどのように見えるかのスクリーンショットを添付しました。
ここでは、各リスト項目を定義するカスタム レイアウトの簡単なスニペットを示します (マーキー TextView を使用)...
覚えておいてください、スクロールを取得するには android:ellipsize を「マーキー」に設定する必要があることを知っていますが、上記で説明したように、現在選択されているリストのタイムに対してプログラムでこれを行っていました。
誰かがこれに対する解決策を持っていますか? 事前に感謝し、長い投稿をお詫びします...徹底的にしようとしています. 再度、感謝します!
android - Android - 更新後にリストがトップに戻る
ハンドラーの postDelayed() メソッドを介して 2 秒ごとに更新されるリストがあります。
2 秒ごとに AsyncTask が実行され、HTTP GET 要求が行われ、JSON がオブジェクトのリストに変換され、ListAdapter が設定されます。
私の問題は、タスクが完了するたびに (つまり、約 2 秒ごとに) リストの真ん中または一番下までスクロールしても、リストが一番上に戻ってしまうことです。これはエンド ユーザーにとって非常に煩わしいので、バックグラウンドでリストを更新する必要がありますが、AsyncTask の完了時にリストの現在のビューがトップに戻らないようにします。
必要なコードをさらに含めることができます。私はAndroid開発に少し慣れていないので、他の人にとって何が役立つかわかりません。
追加情報
hacksteak25 からの提案を受けて、アダプターからすべてのデータを削除してから、一度に 1 つのオブジェクトを追加し直すところまで到達できました。おそらくこれでも画面がジャンプする可能性があるため、これは最終的な解決策ではありませんが、ある時点でデータをマージする方法の概念実証として使用しようとしています.
私の問題は、次のコードを呼び出すことです。
「add(myObject)」への最初の呼び出しの後、MyListAdapter の getView() メソッドが呼び出されています。カスタム アダプターのプライベート内部 ArrayList は、onCreate() で myObjects を使用せずにアダプターを設定したか、アダプターで clear() を呼び出したため、この時点では空です。いずれにせよ、ビューを取得するオブジェクトが ArrayList にないため、これにより getView が失敗します。
getView() は次のようになります。
その最後の行は、IndexOutOfBoundsException を引き起こす行です。
リストをジャンプさせずに、そこに必要なデータを取得するこの状況をどのように処理すればよいですか?
android - 「android.R.layout.simple_list_item_1」とは何ですか?
私はAndroid開発の学習を開始し、本からのtodolistの例に従っています。
私はこのコード、特にこの行を正確に理解することはできません:
android - notifyDataSetChanged の例
メソッドで anを使用Android Application
しようとしていますが、うまくいきません。notifyDataSetChanged()
ArrayAdapter
メインスレッドで実行する必要がある回答 hereを見つけましnotifyDataSetChanged()
たが、その例はありませんでした。
誰かが例または少なくともリンクを送ってもらえますか?!
java - ArrayAdapter を並べ替えてもデータ ソースが変更されない
私は奇妙な問題を抱えています。並べ替えている ArrayAdapter があります。これは私の画面では正しく表示されますが、実際のデータ ソースを確認すると、内容がソートされていません。ListAdapter をソートすると、データ ソースもソートされるようにするにはどうすればよいですか?
例: データ ソースが[10,9,1,20]
並べ替えた後、ListView が表示されます[1,9,10,20]
ただし、データ ソースは引き続き[10,9,1,20]
どうすればこれを解決できますか?
android - ListViewの単一の行を更新するにはどうすればよいですか?
ListView
ニュースを表示するがあります。画像、タイトル、テキストが含まれています。イメージは別のスレッド(キューとすべてを含む)にロードされ、イメージがダウンロードされたらnotifyDataSetChanged()
、リストアダプターを呼び出してイメージを更新します。これは機能しますが、表示されているすべてのアイテムを呼び出すためgetView()
、頻繁に呼び出されます。リスト内の1つのアイテムだけを更新したいと思います。どうすればいいですか?notifyDataSetChanged()
getView()
現在のアプローチで抱えている問題は次のとおりです。
- スクロールが遅い
- リスト内の新しい画像が1つ読み込まれるたびに発生する、画像のフェードインアニメーションがあります。