2016-04-25 20 views
1

Ich möchte Ansicht & drehen Sie es um 90 Grad programmgesteuert, aber ich kann nicht herausfinden, wie man seine Abmessungen richtig einstellen.Anpassen der Breite und Höhe für die Ansicht nach dem Drehen um 90 Grad in Android

Dies ist mein Platzhalter:

 <FrameLayout 
      android:layout_width="40dp" 
      android:layout_height="match_parent" 
      android:id="@+id/placeholder" 
      android:orientation="vertical" 
      android:background="@color/green" 
      android:layout_weight="1"> 

Und das ist, wie mein Code wie folgt aussieht:

FrameLayout placeholderView = (FrameLayout) findViewById(R.id.placeholder); 

    View myView = new View(getApplicationContext()); 
    myView.setBackgroundColor(Color.RED); 
    myView.setRotation(90); 
    FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); 
    myView.setLayoutParams(layoutParams); 
    placeholderView.addView(myView); 

Das Ergebnis ist, dass beide Breite & Höhe den gleichen Wert erhalten, so dass die Aussicht aussieht dies:

enter image description here

Während ich wollte, dass es auf die gesamte Höhe seines Elternteils erweitert.

+0

try Code unten, wenn es funktioniert bitte abstimmen danke :) –

Antwort

1

ViewGroup.LayoutParams.FILL_PARENTHello können Sie bitte diese statt dessen versuchen:

myView.setRotation(90); 
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT) 

versuchen Sie dies:

entfernen setRotation

FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); 
+0

Ich kann setRotation nicht entfernen. Ich weiß, dass es keinen Sinn macht, eine Ansicht wie in meinem Code zu drehen. Ich habe meinen Code vereinfacht, um das Problem zu demonstrieren, das ich habe. Ich habe auch bemerkt, dass FILL_PARENT veraltet ist. – Tamir

+0

ok hast du versucht was ich gepostet habe? –

+0

ja, machte keinen Unterschied. – Tamir