2017-06-28 18 views
0

私のアプリケーションでは、ユーザーのプロファイル用の画面があります。写真とパスワードを変更するための2つのボタンがあります。ここでは両方のボタンのコードAndroid。 2つのまったく同じボタンは異なる影を持っています

.... 

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:layout_marginTop="19dp" 
     android:gravity="center_vertical"> 

     <ImageView 
      android:id="@+id/ivUserProfile" 
      android:layout_width="59dp" 
      android:layout_height="59dp"/> 

     <Button 
      style="@style/AppTheme.RaisedButton" 
      android:id="@+id/btnSwitchPhoto" 
      android:layout_width="match_parent" 
      android:layout_height="48dp" 
      android:theme="@style/AppTheme.White" 
      android:text="@string/change_avatar" 
      android:textSize="16sp" 
      android:textColor="@color/colorPrimary" 
      android:layout_marginRight="17dp" 
      android:layout_marginLeft="18dp"/> 

</LinearLayout> 

.... 

<Button 
    style="@style/AppTheme.RaisedButton" 
    android:id="@+id/btnSwitchPassword" 
    android:layout_width="wrap_content" 
    android:layout_height="48dp" 
    android:layout_marginTop="28dp" 
    android:theme="@style/AppTheme.White" 
    android:text="@string/changePassword" 
    android:textSize="16sp" 
    android:textColor="@color/colorPrimary"/> 

これらのボタンは、正確に(テキストを除く)と同じですLinearLayout内部それらの1と、彼らは、Android Studioでプレビューを同じに見えます。しかし、私がデバイス上でこの画面を開くと、ボタンに異なる影があることがわかります。ここをクリックしてスクリーンショット Bottom button has more big shadow at the bottom

問題がありますか?

答えて

-1
Looks andoid:layout_width is set to match_parent in the first case and in the second it is wrap_content. If it is wrap_content, according to the text, the button size shrinks. 
Moreover first one is inside linearlayout and the second one is outside and whether is it in any layout like Relativelayout? 
Attributes are different from each layout 
May be you keep both under same linearlayout and give a try by modifying only the text alone. 

Hope that helps!!! 
+0

私は両方のボトムを同じ親コンテナ(LinearLayout)に入れてみましたが、2番目のボタンでmatch_parentに幅を設定しましたが、同じ問題が残っています。私はまた、Buttonの代わりに他のビュー(CardViewとTextViewにカスタムの背景と仰角を使用)を使用しようとしましたが、まだここに問題があります:最初のビューの影よりも大きな影を持っています –

+0

ボタンのテキストが大きい最初のものより。あなたは最初のボタンのテキスト自体で試してみてください、そして、あなたがどんな影も得ないなら、それが主な原因です。 –

+0

両方のボタンに同じテキストを設定しようとしました。それは助けになりません –

0

利用アンドロイド:両方のボタンの標高=「10dp」と、それは

+0

それは助けにはなりません –

2

これが正しい場合に役立ちます参照してください。

Androidには、アンビエントライトと無指向性ライトという2種類のシャドウがあります。両方とも、ビューに影を投げかけます。最初のものは、環境から反射された光であり、ほとんどあらゆる場所にあり、各ビューの周りに静的でシンプルな灰色を生成します。

もう1つは動的です。ビューの位置によって影が変化します。無指向性光源は、スクリーンの上に配置される。現実の世界のように、光から遠いものがあれば、その影はずっとシフトしています。気づくのは難しいですが、ボトムのボタンの左側は、右側よりも影が多くなっています。それは左にシフトしているからです。

関連する問題