0

Я наполним вид адаптером и когда iam заполняет данные до RV, тогда прокручивать нельзя.Recyclerview с LinearLayout не может прокручивать

Это мой RC:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.SwipeRefreshLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/trip_ticket_refresh" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/trip_ticket_recycler" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 

</android.support.v4.widget.SwipeRefreshLayout> 

RC, заполняет это представление:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    style="@style/TripMyTicketScrollView" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:orientation="vertical"> 

    <Button 
     android:id="@+id/my_ticket_port_and_directions" 
     android:layout_width="match_parent" 
     android:layout_height="@dimen/grid_14" 
     android:layout_marginEnd="@dimen/grid_2" 
     android:layout_marginLeft="@dimen/grid_2" 
     android:layout_marginRight="@dimen/grid_2" 
     android:layout_marginStart="@dimen/grid_2" 
     android:layout_marginTop="@dimen/grid_1" 
     android:height="@dimen/grid_5" 
     android:background="@color/bg_on_board_button" 
     android:drawableEnd="@drawable/ic_keyboard_arrow_right" 
     android:drawableLeft="@drawable/ic_rudder_black_32dp" 
     android:drawablePadding="6dp" 
     android:drawableRight="@drawable/ic_keyboard_arrow_right" 
     android:drawableStart="@drawable/ic_rudder_black_32dp" 
     android:gravity="center|start" 
     android:padding="@dimen/grid_2" 
     android:text="@string/my_ticket_port_and_direction" 
     android:textColor="@color/text_color_my_trip_button" 
     android:textStyle="bold" /> 

    <include layout="@layout/view_my_trip_time_schedule" /> 

    <include layout="@layout/view_my_trip_passengers_and_cabins" /> 

    <include layout="@layout/view_my_trip_booking_number" /> 


</LinearLayout> 

Есть некоторые линейные макеты с кнопками и TextView в <include layout=...

И когда вид поперек размер экрана тогда обычно начинается с прокрутки, но в этом случае нет. Адаптер пуст, потому что я должен решить эту проблему, и я продолжу.

Вы можете мне помочь? Спасибо.

Update Это RC INIT в фрагменте

private void initRecyclerView(){ 
     mAdapter = new MyTicketAdapter(getContext()); 
     RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getActivity()); 
     mRecyclerRv.setLayoutManager(mLayoutManager); 
     mRecyclerRv.setAdapter(mAdapter); 
    } 

адаптер не заполняет никакие данные сейчас. Вот адаптер:

public class MyTicketAdapter extends RecyclerView.Adapter<MyTicketAdapter.MyViewHolder> { 

    private static final int BARCODE_IMAGE_WIDTH = 150; 
    private static final int BARCODE_IMAGE_HEIGHT = 40; 

    private Departure mDeparture; 
    private final Context mContext; 

    public class MyViewHolder extends RecyclerView.ViewHolder { 
// 
//  @BindView(R.id.my_ticket_booking_number_barcode_ticket) 
//  ImageView mBarcodeImageView; 
// 
//  @BindView(R.id.my_ticket_booking_number_barcode_booking_number) 
//  TextView mBookingNumberBelowBarcode; 
// 

     public MyViewHolder(View view) { 
      super(view); 
      ButterKnife.bind(this, view); 
     } 

    } 

    /** 
    * Creates a new instance of this class. 
    * 
    * @param context need values from resource. 
    */ 
    public MyTicketAdapter(Context context) { 
     mContext = context; 
    } 

    @Override 
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     View itemView = LayoutInflater.from(parent.getContext()) 
       .inflate(R.layout.list_item_trip_ticket, parent, false); 
     return new MyViewHolder(itemView); 
    } 

    @Override 
    public void onBindViewHolder(MyTicketAdapter.MyViewHolder holder, int position) { 

     if (mDeparture == null) { 
      return; 
     } 

     TravelMateLogs.MY_TICKET_ADAPTER.i("--------Departure: " + mDeparture.toString()); 

    //  generateBarcode(holder); 
    } 

    @Override 
    public int getItemCount() { 
     // There is only one item. 
     if(mDeparture == null){ 
      return 0; 
     }else { 
      return 1; 
     } 
    } 

    /** 
    * Sets the data to be displayed in the list. 
    * 
    * @param departure The departure to be displayed in the view. Null will clear the list. 
    */ 
    void setData(@Nullable Departure departure) { 
     mDeparture = departure; 
     notifyDataSetChanged(); 
    } 
} 
+0

Только для тестового примера может у изменить андроида: layout_height = "match_parent "to android: layout_height =" wrap_content "для LinearLayout элемента recycliewiew и попробуйте – Raghavendra

+0

Ничего не случилось –

ответ

0

Решение:

мне пришлось обернуть всю часть в LinearLayout:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    style="@style/TripMyTicketScrollView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:orientation="vertical"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/bg_trip_tab_view" 
     android:orientation="vertical" 
     android:paddingBottom="@dimen/grid_14"> 


     <include layout="@layout/view_my_trip_time_schedule" /> 

     <include layout="@layout/view_my_trip_passengers_and_cabins" /> 

     <include layout="@layout/view_my_trip_booking_number" /> 

    </LinearLayout> 
</LinearLayout> 

Теперь работа ...

0
<android.support.v7.widget.RecyclerView 
    android:id="@+id/trip_ticket_recycler" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"/> 

Если это обертка, recyclerview не видно. Также, пожалуйста, отправьте повторную проверку.