2

在設計中的一個android 4.1應用程序中,我試圖讓我的底部欄有兩個按鈕是動態的,也就是說不會卡住即使當我在頁面的頂部時,也可以到屏幕的底部。我希望它只有在用戶滾動到頁面的最後時纔會顯示。現在,無論我嘗試多少,它仍然固定在屏幕的底部。我真的很感謝一些幫助。 謝謝。僅當我滾動到頁面底部時,纔會出現android底部按鈕欄

project_search_list.xml

<?xml version="1.0" encoding="UTF-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 

<ListView android:id="@android:id/list" 
    android:layout_width="fill_parent" android:layout_height="0dip" 
    android:layout_weight="1" android:drawSelectorOnTop="false" 
    /> 

<ImageView 
    android:id="@+id/image" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom" 
    android:contentDescription="@string/description" 
    android:gravity="left" 
    android:scaleType="fitXY" /> 

<TextView 
    android:id="@+id/empty" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_gravity="left" 
    android:text="" /> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" android:layout_height="wrap_content"> 

<LinearLayout android:id="@+id/footer" android:layout_width="fill_parent" 
android:layout_height="wrap_content" android:orientation="horizontal" 
android:layout_alignParentBottom="true" style="@android:style/ButtonBar"> 

<Button android:id="@+id/prev_10_results" android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:layout_weight="1" 
    android:text="@string/prev_10_results" /> 

<Button android:id="@+id/next_10_results" android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:layout_weight="1" 
    android:text="@string/next_10_results" /> 

</LinearLayout> 
</ScrollView> 
</LinearLayout> 

這裏有一個屏幕截圖。注意底部的按鈕欄?我希望它只有在向下滾動到頁面末尾時纔會顯示。

screen shot

回答

1

這應該讓你開始,檢查與排onscrollstatechanged是可見的,然後拿個像切換動作正確,或者如果您使用的知名度去列表視圖將發生在部分地方動畫按鈕欄按鈕欄之前。這樣,您就不必在底部空白:

@Override 
public void onScrollStateChanged(AbsListView view, int scrollState) { 

    if (scrollState == 0 && mListContent.getLastVisiblePosition() == 0 
      && buttonbar.getVisibility() == View.GONE) { 
     toggleButtonbar(); 
    } else if (mListContent.getLastVisiblePosition() != 0 
      && buttonbar.getVisibility() == View.VISIBLE) { 
     toggleButtonbar(); 
    } 
} 
+0

謝謝...讓我再試試這個,我會盡快給您是怎麼一回事呢 – Pulkit2692 2012-07-20 13:10:16

+0

偉大的作品,欣賞它! – Pulkit2692 2012-07-24 14:45:04