-1

私は過去3時間この作品を作るために費やしたので、何かを投稿するのを忘れたらごめんなさい...

ここに問題があります:

  • 私はListViewを使用しています。これには、並べて表示された画像とCheckedTextViewを含むXMLを拡張するカスタムBuddyArrayAdapterがあります。選択肢を1つだけにしたいので、SINGLE_CHOICEを使用するように設定しました。

(アンパサンドは画像であり、角かっこはtextviewのチェックボックスがオンになっているように見せかけます。)

    //my list looks like this

    & name1Here          []

    & name2Here          []

    & name3Here          []

    & name4Here          []

明日コードを投稿しますが、これが私が経験していることです。--listViewのonItemClick()でgetChildAt()を使用すると、ランダムな子がオンとオフをチェックしますが、十分なクリックが行われると、最終的にすべてのチェックが解除されます。-アダプタのgetView()にcheckedTextView.onClick()を実装すると、リストビューのすべての行に対してnullpointerexceptionsが発生します。-他に意味のあることをすると、行を選択すると、チェックボックスがオンになり、クリックしなかったかのようにすぐにチェックが外されます。しかし、listView.getCheckedItemPosition()で取得できるため、まだ「クリック」されています

私はコードを調べましたが、toggle()はもうどこにも呼び出されていません。私が持っている唯一のclickListenerはリストにあります。

基本的に、これは今のように見えます

        public void onItemClick(AdapterView<?> parent, View view, int position, long id)
        {
            listConversations.setItemChecked(position, true);
            Log.d("<>>>>>>>>>>>>>>>>>>>>>>>>>>>", "listConversations.getCheckedItemPosition() = "+listConversations.getCheckedItemPosition());

            listConversations.


            OnContactClick(position, id);
        }

ログに記録された数は正しいです。ただし、このばかげたアプローチでも、CheckedTextViewのチェック可能な部分は、ワンクリックでそれ自体をチェック/チェック解除します。リストビューが他のすべてをチェックすることを期待していたので、これが今日の私の最後の試みでしたが、そうではありませんでした。私は複数の方法を持っているか、まったく持っていません。

それでも質問がわからない場合は、この地獄を獲得するために何を台無しにして、チェックマークを想定どおりに機能させることができなかったのでしょうか?!?!

助けてください。私はこの途方もなく遅れたものに3時間を無駄にしました。私は必死です。

lastminuteadd:この男と同じ種類の問題が 発生しているようですListView:setItemCheckedは標準のArrayAdapterでのみ機能します-カスタマイズされたArrayAdapterを使用している場合は機能しませんか?

4

1 に答える 1

0

誰も答えてくれなかったから やらなきゃいけないんだろうな…

秘訣は、Wrapper クラスに Checkable を実装させることでした。そして、ラッパークラスが欠落している場合に作成するには...

于 2012-08-21T10:55:40.527 に答える