2016-01-12 142 views
1

我在抽屜式導航欄中沒有抽屜項。當第一個項目(汽車旅館)被點擊時,它會轉到一個有汽車旅館列表的活動。每個項目都包含在cardView中。我已經實現了cardView的點擊,當它被點擊時,它應該用一個片段替換線性佈局,但它沒有響應。 這是代碼: Motels.java(活動包含汽車旅館的列表):android片段不工作

package com.example.sabudaniel61.ktdc; 

import android.content.Context; 
import android.support.v4.app.FragmentTransaction; 

import android.os.Bundle; 
import android.support.v4.app.FragmentManager; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.CardView; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.widget.LinearLayout; 



/** 
* Created by Jobin Sabu on 1/11/2016. 
*/ 
public class Motels extends AppCompatActivity{ 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.motels); 

     CardView cardView1=(CardView) findViewById(R.id.cardView1); 
     cardView1.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       FragmentManager fragmentManager = getSupportFragmentManager(); 
       FragmentTransaction transaction = fragmentManager.beginTransaction(); 
       MotelKttrk motelKttrk = new MotelKttrk(); 
       transaction.replace(R.id.linearmotel, motelKttrk); 
       transaction.commit(); 


      } 
     }); 
    } 
} 

motels.xml(佈局保持汽車旅館的列表): 當點擊列表中的一個就應更換

package com.example.sabudaniel61.ktdc; 

import android.os.Bundle; 

import android.support.v4.app.Fragment; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 

/** 
* Created by Jobin Sabu on 1/12/2016. 
*/ 
public class MotelKttrk extends Fragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View v=inflater.inflate(R.layout.motel_kottarakara,container,false); 
     return v; 
    } 
} 

motel_kottarakar:id爲@ + ID/linearmotel

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

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="70dp" 
     android:background="#1b5e20" 
     android:gravity="center" 
     android:padding="5dp" 
     android:text="KTDC MOTELS AT A GLANCE" 
     android:textColor="#ffffff" 
     android:textSize="25sp"></TextView> 

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

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

      <android.support.v7.widget.CardView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="5dp" 
       app:cardCornerRadius="8dp" 
       android:id="@+id/cardView1" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="0dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear1" 
         android:layout_width="match_parent" 
         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp" 
         android:clickable="true"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="6dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Kottarakkara " 

          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear2" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Punaloor" 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear3" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Palaruvi " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear4" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Kayamkulam" 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear5" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Alappuzha " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear6" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Vaikkom " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 

      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear7" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Athirapally " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear8" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Kuttipuram " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear9" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Erumayur " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 
      > 

      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear10" 
         android:layout_width="match_parent" 


         android:layout_height="30dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Araam, Vadakara " 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 


      <android.support.v7.widget.CardView 

       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:layout_marginTop="10dp" 
       app:cardCornerRadius="8dp" 
       app:cardElevation="@dimen/cardview_default_elevation" 
       app:cardPreventCornerOverlap="false"> 

       <com.andexert.library.RippleView 
        rv_centered="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="1dp" 
        app:rv_color="#b2dfdb"> 

        <LinearLayout 
         android:id="@+id/linear11" 
         android:layout_width="match_parent" 
         android:layout_height="30dp" 
         android:layout_marginBottom="5dp" 
         android:layout_marginLeft="10dp" 
         android:layout_marginTop="10dp"> 

         <ImageView 
          android:layout_width="7dp" 
          android:layout_height="7dp" 
          android:layout_marginTop="5dp" 
          android:background="#90000000" /> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_marginLeft="5dp" 
          android:text="Motel Aaram, Kannur" 
          android:textSize="17sp" /> 

        </LinearLayout> 
       </com.andexert.library.RippleView> 
      </android.support.v7.widget.CardView> 

     </LinearLayout> 
    </ScrollView> 


</LinearLayout></LinearLayout> 

MotelKttrk.java(片段)的的LinearLayout A.XML(片段的佈局):

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:weightSum="1" 
    android:id="@+id/motel1"> 

    <TextView 
    android:layout_width="match_parent" 
    android:layout_height="35dp" 
    android:text="Motel Araam, Kottarakkara\n(Thiruvananthapuram-Kottayam MC road)" 
    android:id="@+id/textView" 
     android:padding="5dp" 
     android:background="#F50057" 
    android:textColor="#ffffff" 
    android:textSize="15sp" 
    android:layout_weight="0.03" /> 
    <View 
     android:layout_width="wrap_content" 
     android:layout_height="1dp" 
     android:layout_marginTop="5dp" 
     android:background="@drawable/shadow"/> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:paddingLeft="15dp" 
     android:paddingRight="10dp" 
     android:layout_marginTop="10dp" 
     android:text="Located at 70 km from Thiruvananthapuram by the side of MC Road in Kottarakkara, this motel facilitates a break for travellers begining their journey from Trivandrum.This motel is about 80 km from Kottayam ie. almost middle of Thiruvananthapuram - Kottayam MC road." 
     android:id="@+id/textView1" 
     android:background="#ffffff" 

     android:textSize="15sp" 
     android:layout_weight="0.03" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="35dp" 
     android:background="#ffffff" 
     android:text="Facilities" 
     android:id="@+id/textView3" 
     android:padding="14dp" 

     android:textColor="#F50057" 
     android:textSize="15sp" 
     android:layout_weight="0.03" /> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="45dp" 
     android:paddingLeft="15dp" 
     android:text="Two non A/c twin bedded rooms\nA/c and Non A/c restaurants" 
     android:id="@+id/textView4" 
     android:background="#ffffff" 


     android:textSize="15sp" 
     android:layout_weight="0.03" /> 
</LinearLayout> 

enter image description here

回答

1

試着改變你linearmotel從LinearLayoutFrameLayout在XML和定義的寬度和高度。

<FrameLayout 
     android:layout_width="match_parent" // change as per your requirement 
     android:layout_height="match_parent" // change as per your requirement 
     android:id="@+id/linearmotel"> 
+0

我已經實現了點擊線性佈局ID爲R.id.linear1.It工作,但它顯示爲上面的截圖。框架佈局中的內容不會被刪除。 – jobin

+0

你在嗎??? – jobin

+0

發生這種情況是因爲您在定義容器佈局的高度時使用了wrap_content屬性。 –