2016-04-28 32 views
6

Czy ktoś może mi pomóc z następującym obrazem. Ponieważ muszę zastosować gradient do paska stanu. Wiem, że robię tylko jeden kolor na pasku stanu za ich pośrednictwem colorPimaryDark. enter image description hereJak zastosować gradient na pasku stanu w systemie Android?

Jak widać na obrazku, ten sam gradient na pasku stanu, co w układzie weryfikacji.

Dzięki

+1

[http://meta.stackoverflow.com/questions/266384/is-it-ok-to-downvote-questions-asking-about-how-to-achieve-something-without-ha ] (http://meta.stackoverflow.com/questions/266384/is-it-ok-to-downvote-questions-asking-about-how-to-achieve-something-without-ha) –

+1

Ustaw pasek stanu przezroczysty i ustaw duży pasek narzędzi i ustaw gradient. –

+0

Motyw? @ ZahidulIslam –

Odpowiedz

18

Twój OnCreate powinno być jak ten

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { 
     Window w = getWindow(); 
     w.addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); 
     w.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); 
    } 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

Layout plik powinien być w takim stanie.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#fff" 
    tools:context="sslwireless.com.testfullscreen.MainActivity"> 

    <!--RePresent Toolbar--> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:background="@drawable/gradient" 
     android:layout_width="match_parent" 
     android:layout_height="100dp"> 

     <ImageView 
      android:layout_gravity="center_vertical" 
      android:src="@drawable/ic_arrow_back_white_24dp" 
      android:layout_marginLeft="10dp" 
      android:layout_width="35dp" 
      android:layout_height="35dp" /> 

     <TextView 
      android:layout_gravity="center_vertical" 
      android:textSize="25sp" 
      android:gravity="center_horizontal" 
      android:textColor="#fff" 
      android:text="Test Title" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" /> 

    </LinearLayout> 


</RelativeLayout> 

Plik gradientu wygląda tak.

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <gradient android:angle="135" android:startColor="#f56f2c" android:endColor="#fa9f46"/> 
</shape> 

Ui będzie wyglądać tak.

enter image description here

+0

dziękuję za miłą odpowiedź i poświęcenie. Czy jest jakiś sposób, aby tylko pasek statusu uczynił przezroczystym zamiast przezroczystym zarówno pasek stanu, jak i przycisk nawigacyjny na dole. –

+0

android: windowSoftInputMode = "adjustPan" nie działa :(Teraz miękka klawiatura obejmuje EditTexts. – Khan