問題タブ [android-adapter]

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 投票する
2 に答える
634 参照

android - GridView に BaseAdapter が必要なのはなぜですか?

なぜ必要なBaseAdapterGridViewですか?なぜベースアダプター自体なのか? 他のアダプタータイプを使用できますか?

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

android - ListViewを再作成するAndroid

listViewを再作成するにはどうすればよいですか?少数のTextViewを含むアイテムを含むlistViewがあり、ListViewを再ロードして、すべての行からそれらのTextViewの一部を非表示にします。notifyDataSetChanged()を使用して、新しいアダプターの設定、アダプターのクリア(listViewを空にする)、listViewの無効化を試みました。ListViewにアイテムの再作成を強制するものはありませんでした。

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

android - Android での Bluetooth デバイスの検出 -- startDiscovery()

目標:範囲内の BT デバイスの名前とアドレスを検出し、それらの値を Web サービスに送信する Android アプリを作成します。BT デバイスは、これまでホスト デバイスに結合されていませんでした。歩き回っているときにすべてをポーリングしたいだけです。

私がやったこと:

  1. ドキュメントを熟読。
  2. ホスト デバイスの BT アダプターのローカル インスタンスを実装しました。
  3. 有効になっていない場合に BT を有効にする通知を実装しました。
  4. startDiscovery()ACTION_FOUNDsの終了を解析するための登録されたブロードキャスト レシーバーとインテント。
  5. マニフェストにBLUETOOTHおよびBLUETOOTH_ADMINパーミッションを登録しました。

物事は(増分コンソールロギングでテストされたように)まで動作しstartDiscovery()ます。


フラストレーション:

  • startDiscovery() -- 間違ったコンテキストでこれを渡していると思われます。このメソッドを適切に機能させるには、どのコンテキスト内に配置する必要がありますか?

この方法をうまく機能させることができた場合は、あなたの知恵に感謝します。

更新- これは、私を悲しませているコードの簡素化されたバージョンです。この単純化は、私のエラーを要約しています。このコードは実行されますが、エラーやその他のエラーはスローcat.logされず、何も出力されません。

}

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

android - データベースからリストビューにアイテムを追加するにはどうすればよいですか?

私は通常、このコードを使用して、日付ベースからリストビューにアイテムを追加します。

しかし、私のプロジェクトでは、ここのようにリストビューに画像を追加しました:

それはarrayadapterで問題を引き起こします、私はいつものようにlistviewを捕まえることができません:

アドバイスをお願いします

新しいコード:

removearrayadapterコード:

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

android - カスタムアダプタを使用してリストビューを検索する

私のアプリには、カスタムアダプタを備えた2行のListViewがあります。EditTextへの入力でリストビューの内容をフィルタリングしたい。どうしてそれは可能ですか?

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

android - Beanオブジェクト用のアダプタは何ですか?

Beanオブジェクトを最初のビューから2番目のビューに送信しています。表示するデータを含む配列があるときにArrayAdapterを使用することもありますが、今回は表示したいBeanオブジェクトしかありません。どのタイプのアダプターを使用する必要がありますか?

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

android - アプリケーションを再開するときにアダプタにアイテムが追加されたにもかかわらず、ListViewが空です

解決できないようなバグのあるアプリケーションが市場に出回っています。今日、私はそれを次の方法まで追跡しました。

このメソッドには、インターネットからプルダウンされた取引オブジェクトの配列リストが渡されます。アプリケーションが最初に開かれると、データがインターネットからプルされ、上記のメソッドが呼び出されて、ListFragmentに設定された新しいアダプターが作成されます。このメソッドは、ユーザーがさらに取引を要求したときにも呼び出されます。

私が抱えている問題は、アダプターに取引が含まれているにもかかわらず、リストが空であると考えることがあるということです。これは、デバイスのメモリが不足しているときにアプリケーションを再開したときに発生するようです(アプリケーションの一部がRAMから削除されたと思います)。このメソッドが呼び出され、dealListAdapterがnullであるため、新しいメソッドが作成され、取引が追加されます。これが発生しても、リストは空のままであり、ユーザーはアプリを強制的に閉じて再び機能させる必要があります。

以下の行は、メソッドが呼び出されたときのtatを示しており、ifと21の取引がアダプターに追加されます。残念ながら、リストはユーザーには空です。

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

android - フラグメント内のイメージ GridView

iOSで開発した後、Androidプラットフォームで開発を始めたばかりです。私は周りを見てきましたが、それを理解できないようです。アクション バーのタブが選択された後にグリッド ビューを表示しようとしています。フラグメントは、タブ バーを制御するメイン アクティビティによって表示されます。問題はコンテキストの受け渡しに関係していると思いますが、よくわかりません。

これが私のMainActivity.javaです。ここでフラグメントが初期化され、アクティビティにアタッチされます。フラグメントにコードがなくても機能します。

これが私の PhotosFragment.java です。これは、グリッド ビューにデータを入力して表示する場所です。

これが私のPhotoImageAdapter.javaクラスです。これは、画像がアダプターに追加される場所だと思います。

そして、ここにidがphotogridviewのグリッドビューを含む私のphotos_layoutがあります。 photos_layout.xml

編集

クラッシュ時のログレポートはこちら

タブをクリックするとアプリケーションがクラッシュし、フラグメントが初期化されます。私がフォローしているチュートリアルは、Android 開発者サイトのものです。

どんな助けや説明も素晴らしいでしょう。私が言ったように、私はこれに慣れていないので、何が起こっているのかを理解するのに役立ついくつかの指針があれば素晴らしいでしょう.

ディスコ

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

android - Insert pages in the middle of a FragmentPageAdapter

I'm using a ViewPager from ViewPageIndicator and I need to be able to dynamically insert one fragment in the middle of others.

I've tried to manage the model with FragmentPagerAdapter and FragmentStatePagerAdapter (both from v4 support code) and the first seems to don't manage in any way insertion of pages in the middle. And the second only works if I make a naive implementation of getItemPosition returning always POSITION_NONE but this cause completly recreation of pages every time I swipe.

The problem I've observed with FragmentStatePagerAdapter (FSP) is this:

  • I start with two pages [A][B]
  • Then I insert [C] in the middle [A][C][B]. After the insert I call notifyDataSetchange()
  • Then FSP calls getItemPosition for [A] and gets 0
  • Then FSP calls geTItemPosition for [B] and gets 2. And it says... Ohhh I've to destroy [B] and makes mFragments.set(2, null) and then as it only have two elements in mFragments array it throws an IndexOutOfBoundsException

After looking a little in the code it seems that provided fragmentStatePagerAdapter doesn't support insertion in the middle. Is that correct or I missing something?

Update: The insert in the adapter is made in a logical way, when a certain codition is true the pages are incremented by one. The fragment creation is done using constructor in getItem() in that way:

Solution:

As said in accepted answer the key is to implement getItemId().

Make sure you use at least the R9(June 2012) version of android-support library. Because this method was added in it. Previous to this version that method doesn't exist and adapter doesn't manage correctly insertions. Also make sure you use FragmentPageAdapter because FragmentStatePagerAdapter still doesn't works because it doesn't use ids.

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

android - アダプター付きの Android GridView

個々のアダプターで 5 つのリストビューを使用しないようにしようとしているので、週のスケジュールを表す 5 つの列を持つ GridView を作成し、CursorAdapter をそれにアタッチすることを考えています。db の各行には、曜日を表す dayId があります。

気になるのは、アダプターに GridView を設定することです。

カーソル行で提供された dayId に基づいて要素を特定の列に設定する機会はありますか、またはアダプターに行く前にカーソル行をソートするための完全なロジックを作成する必要がありますか?