2017-04-05 8 views
0

XMLデザインの右上にマイフローティングボタンを設定しましたが、アプリケーションをデバイスに実行すると浮動ボタンが正しい位置に表示されません。 私は自分のデバイスでXMLデザインと同じポジションを取るでしょう。CardViewのFloatingActionButtonの位置

私のXML設計

XML design

デバイスショー:

device

<android.support.v7.widget.CardView 
    android:id="@+id/card_view" 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:clickable="true" 
    android:layout_margin="4dp" 
    card_view:cardCornerRadius="7dp" 
    android:elevation="8dp" 
     app:cardPreventCornerOverlap="false" 
    > 
<LinearLayout 

    android:orientation="vertical" android:layout_width="152dp" 
    android:layout_height="match_parent" 
    android:weightSum="1" 
    android:descendantFocusability="blocksDescendants"> 

    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:layout_width="match_parent" 
      android:layout_height="100dp" 

      android:scaleType="fitXY" 
      app:srcCompat="@drawable/draw_menu" 
      android:id="@+id/imageprodcard" /> 

     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/likeButtoncard" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="0dp" 
      android:clickable="true" 
      android:src="@drawable/heart" 
      android:layout_gravity="right" 
      app:borderWidth="0dp" 
      app:fabSize="mini" 
      app:layout_anchor="@id/imageprodcard" 
      app:backgroundTint="#FFCCBC" 
      app:srcCompat="@drawable/ic_favorite_border_black_24dps" 
      /> 

    </FrameLayout> 

    <TextView 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="TextView" 
     android:layout_width="match_parent" 
     android:layout_height="25dp" 
     android:id="@+id/nomprodtestcard" 
     android:textAllCaps="false" 
     android:fontFamily="casual" 
     android:textAlignment="center" 
     android:paddingLeft="5dp" /> 

    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="16dp"> 

     <TextView 
      android:textAppearance="?android:attr/textAppearanceSmall" 
      android:text="TextView" 
      android:layout_width="105dp" 
      android:layout_height="20dp" 
      android:id="@+id/prixprodtestcard" 
      android:textColor="@android:color/holo_red_light" 
      android:textAlignment="center" 
      android:paddingLeft="5dp" 
      android:elevation="5dp" /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:id="@+id/rating" 
      android:layout_weight="777.07" /> 

     <ImageView 
      android:layout_width="20dp" 
      android:layout_height="match_parent" 
      app:srcCompat="@android:drawable/btn_star" 
      android:id="@+id/imageView4" 
      android:scaleType="fitStart" /> 

    </LinearLayout> 

    <TextView 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="TextView" 
     android:layout_width="match_parent" 
     android:layout_height="20dp" 
     android:id="@+id/qtestockcard" 
     android:textStyle="normal|italic" 
     android:textAlignment="center" 
     android:paddingLeft="5dp" /> 


</LinearLayout> 
</android.support.v7.widget.CardView> 
+1

トピックがありません - あなたのアプリケーション全体がどのようなものかはわかりませんが、あなたが提供した例から、すべてのCardViewと[Googleのマテリアルデザイン](https:///material.io/guidelines/components/buttons-floating-action-button.html#buttons-floating-action-button-large-screens)これは悪い習慣です。 –

答えて

0

layout_gravity= right|bottommargin= "..."を使用してCardView `またはで設定でFloatingActionButtonを設定viewPager

+0

残念ながら、私はすでにこのパラメータを使用しています。 –

+0

ファクトリをcardViewに置くか、ボタンを押して、CardViewにFABを置くことは悪い考えです。カードビューをリサイクラビューに表示するボタンを入れる方が良い – madmvx

0

フレームレイアウトを相対レイアウトに変更しないと、レイアウトを少し改善しやすくなります。そこからlayout_above = "@ id/imageprodcard"やlayout_alignparentRightとTOPのようなものを追加できますFAB。それが役に立てば幸い!

関連する問題