数日前、新しいTwitter API(ver。3.1.1)に出くわし、ツイートリストに表示された効果をコピーしようとしました。
残念ながら、私は新しいユーザーであり、画像を投稿することができないので、私が話していることを説明しようとしています
ツイートのリスト(リストビュー)があり、longKeyPressedでそれらを操作できます。クリックするとすぐに、選択したアイテムが消え、新しいアイテムが表示されます。この新しいアイテムには、選択したツイートに使用できるオプションがあります(リツイート、お気に入りなど)。
この機能のコピーを作成しようとしましたが、理解できない問題がいくつかあります。
listViewを最適化するためにViewStubを使用すると仮定します。これは、行のレイアウトです。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ViewStub
android:id="@+id/twitter_stub"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:inflatedId="@+id/twitter_actions"
android:layout="@layout/twitter_swipe_actions" />
<LinearLayout android:id="theOneWhichHasToDisappear">
.....the row of the listVIew.....
<LinearLayout>
linearLayout( "theOneWhichHasToDisappear")の可視性を設定しようとすると、everithingがクールになります。
v.findViewById(R.id.theOneWitchHasToDisappear).setVisibility(View.GONE);
//inflating the stubview
ViewStub stub = (ViewStub) v.findViewById(R.id.twitter_stub);
View inflated = stub.inflate();
しかし、残念ながら、アイテムの適切な高さを維持できません(新しい膨張後に高さが変化することは想定されていません)。そうしないと、リストのアイテムを置き換えると、他のアイテムが変更されます!!! たとえば、リストの最初の項目(最初のツイート)をクリックすると、番号1が表示を変更しますが、番号4、8、12なども変更されます。
誰かがそれを行う方法を知っていますか?ありがとう