2015-09-20 1 views
15

J'ai FrameLayout avec android: élévation = "4dp". Ombre de cette élévation dirigée vers le bas. Je veux changer la direction de l'ombre vers le haut.Comment changer la direction de l'ombre d'élévation Android?

<FrameLayout 
    android:id="@+id/container" 
    android:layout_width="match_parent" 
    android:layout_height="100dp" 
    android:elevation="10dp" 
    android:layout_marginBottom="100dp" 
    android:background="@color/ColorPrimary" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true"> 
</FrameLayout> 
+0

Ne serait-ce pas incompatible avec les autres ombres sur l'interface utilisateur – Henry

+0

au lieu de l'élévation, vous pouvez créer un fond d'ombre personnalisé en utilisant le fichier xml. Voici un exemple d'idée -http: //stackoverflow.com/questions/24095223/android-linearlayout-add-border-with-shadow-around-a-linearlayout Je pense que les deux sont idéalement identiques, Mais la façon de faire est différent. –

Répondre

0

En ce qui me concerne, vous ne modifiez pas l'ombre par vous-même. Dans Androids Material Design, l'ombre est automatiquement déterminée par la quantité que vous élevez un élément.

Selon cette question https://graphicdesign.stackexchange.com/questions/80644/where-are-the-light-sources-located-in-material-design la source lumineuse est

45 degrés altitude et 90 degrés angle

Vous devriez vraiment pas utiliser des ombres différentes car il détruira la cohérence globale de la conception matériel . Alors, la seule chose que vous devriez faire est d'élever vos éléments. Peut-être que vous devriez relire les directives de conception matérielle: https://material.io/guidelines/material-design/environment.html#environment-light-shadow

+1

cette réponse devrait être incorrecte, vous donnez seulement votre avis et aucune réponse, je ne comprenais pas si elle ne peut pas être fait ou vous êtes contre contre changer la position de la source lumineuse – xanexpt

+0

La question impliquait l'androïde: élévation et l'état des lignes directrices de conception matérielle vous ne devriez pas modifier les ombres vous-même pour correspondre au style général. Si vous voulez toujours le faire, vous feriez mieux de ne pas utiliser android: élévation et créer votre propre ombre portée – xxtesaxx

+0

ok, merci, mais je ne comprends toujours pas s'il est possible de changer la "position" 3d de si " source lumineuse ", ou si l'ombre native est" fausse ", https://material.io/guidelines/resources/shadows.html – xanexpt