0

У меня есть этот файл макета для фрагмента, который не отображает последний элемент textview, tv_notice_date, в любое время, когда контент превышает высоту экрана. Я добавил панель прокрутки в карту, но полоса прокрутки не отображается.Cardview скрывает некоторые элементы, полосы прокрутки не работают

fragment_notice.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <android.support.v7.widget.CardView 
     android:id="@+id/card_view" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:scrollbars="vertical" 
     android:layout_margin="4dp" 
     card_view:cardCornerRadius="4dp" 
     card_view:cardElevation="1dp"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:orientation="vertical"> 
      <!--Title of notice--> 
      <TextView 
       android:id="@+id/tv_notice_title" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:padding="10dp" 
       android:text="Title of Notice" 
       android:layout_gravity="center" 
       android:textAppearance="?android:textAppearanceLarge" 
       android:textSize="20sp" 
       android:textStyle="bold"/> 

      <TextView 
       android:id="@+id/tv_notice_summary" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:padding="10dp" 
       android:text="@string/notice_body" 
       android:textAppearance="?android:textAppearanceMedium" 
       android:textSize="15sp"/> 
     <!--Date of Notice--> 
     <TextView 
      android:id="@+id/tv_notice_date" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:padding="5dp" 
      android:text="Mon, Nov 28, 2016. 8:56 AM" 
      android:textColor="#0D47A1"/> 
    </LinearLayout> 
</android.support.v7.widget.CardView> 
</LinearLayout> 

strings.xml

<string name="notice_body"> 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
    Summary of the very first post...Summary of the very first post...Summary of the very first post... 
</string> 

Я хочу, чтобы отобразить полосы прокрутки в любое содержание является более, что дата TextView может быть отображен.

ответ

1

Чтобы иметь свиток за пределами карты, вы можете использовать следующую структуру:

<ScrollView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v7.widget.CardView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 
      <!-- your content here --> 
     </LinearLayout> 
    </android.support.v7.widget.CardView> 
</ScrollView> 

Вы можете иметь свиток внутри карты, но в этом случае карта всегда будет занимать весь экран высота, даже если их не так много:

<android.support.v7.widget.CardView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 
      <!-- your content here --> 
     </LinearLayout> 
    </ScrollView> 
</android.support.v7.widget.CardView> 
+0

Это работает. Но если я могу спросить, почему атрибут android: scrollbars в кардвале не отображает полосы прокрутки, но это делает для recyclerviews. –

0

Я не уверен, но если это не работает, то вы можете попробовать, как

LinearLayout 
.... 
...> 
<ScrollView 
..... 
...> 
<CardView 
.... 
....> 
.... 
other views and Viewgroups 
.... 
</CardView 
</ScrollView> 
</LinearLayout> 

сообщение обратно то, что вы получите !! Дайте нам знать,

+0

Это работает !!!!!!! –

 Смежные вопросы

  • Нет связанных вопросов^_^