我有一個自定義適配器的列表視圖。到目前爲止,我已經在第一個「屏幕」上實現了功能。
現在,我想添加一個關於每個項目的詳細信息選項卡,這會推動其下的成員以獲取空間。 如何動畫按下,所以它有一個平滑的過渡?
我有一個自定義適配器的列表視圖。到目前爲止,我已經在第一個「屏幕」上實現了功能。
現在,我想添加一個關於每個項目的詳細信息選項卡,這會推動其下的成員以獲取空間。 如何動畫按下,所以它有一個平滑的過渡?
在您的自定義適配器中,在getView()方法中,可以爲包含整行的視圖設置onClickListener。然後,您可以選擇在用戶點擊時實現顯示/隱藏其他視圖的動畫。
滑動查看下一個距離
view.animate().translationY(distance);
以後,您可以滑動查看回到原來的位置是這樣的:
view.animate().translationY(0);
您也可以輕鬆組合多個動畫。下面的動畫將通過其高度查看滑下,並在同一時間而褪色它:
// Prepare the View for the animation
view.setVisibility(View.VISIBLE);
view.setAlpha(0.0f);
// Start the animation
view.animate()
.translationY(view.getHeight())
.alpha(1.0f);
然後,您可以淡出視野退了出來並滑回原來的位置。我們還設置了AnimatorListener所以我們可以設置視圖的可視性回GONE一旦動畫完成:
view.animate()
.translationY(0)
.alpha(0.0f)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
view.setVisibility(View.GONE);
}
});
我認爲你應該使用ExpandableListView代替的ListView。
看看這個教程:http://www.androidhive.info/2013/07/android-expandable-list-view-tutorial/
希望它能幫助!
如果你想要更清晰的外觀,你可以禁用它的一些GUI組件:android:groupIndicator。 –
你在繪製對象文件夾
<?xml version="1.0" encoding="utf-8"?>
<selector
android:id="@+id/myselector"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_activated="false"
android:drawable="#C9C9C9" />
</selector>
列表視圖list_selector.xml文件中
機器人:listSelector = 「@繪製/ list_selector_drawer」
<ListView
android:id="@+id/left_drawer"
android:layout_width="235dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#ffffff"
android:choiceMode="singleChoice"
android:divider="#d2d1d1"
android:listSelector="@drawable/list_selector_drawer"
android:dividerHeight="1dp"/>
工作
您需要創建另一個活動/片段,該活動/片段的佈局應該包含項目詳細信息的字段。實現在屏幕之間進行轉換或使用詳細信息片段替換當前片段的點擊式功能。希望這已經足夠清晰 – victorantunes