2014-09-02 145 views
0

我想在整個屏幕上進行VideoView拉伸。我在我的項目中的以下佈局的xml:Android佈局fill_parent不工作

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:padding="0dp" 
    tools:context="com.example.myproject.MainActivity" 
    android:background="@color/green"> 

    <VideoView 
     android:id="@+id/videoView" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" /> 

</LinearLayout> 

然而,在手機屏幕看起來像這樣(背景顏色爲綠色和寬度不正確拉伸):

而且機器人:

layout_height = 「FILL_PARENT」 和

layout_he ight =「match_parent」

產生相同的結果。 手機運行Android 4.4。 此外,使用的主題是Theme.Holo.Light.NoActionBar,但更改主題會產生相同的結果(即使xml預覽包含相應的小節)。 我還刪除了主要活動中的標題和操作欄。這裏是我的MainActivity.java onCreate()方法(這是唯一的事情,我已經改變):

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

    setContentView(R.layout.activity_main); 

    final VideoView videoPlayer = (VideoView)findViewById(R.id.videoView); 
    videoPlayer.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.zp); 
    videoPlayer.setOnTouchListener(new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      videoPlayer.start(); 
      return false; 
     } 
    }); 

} 

有人能告訴我怎樣才能使整個屏幕上的VideoView伸展?

+0

你是如何膨脹這樣的佈局? – laalto 2014-09-02 11:10:03

+0

將android:layout_height =「wrap_content」'更改爲'android:layout_height =「match_parent」'怎麼樣? :) – 2014-09-02 11:10:52

+0

我試着將layout_height更改爲「wrap_content」,「match_parent」和「fill_parent」,結果相同。 – user2565010 2014-09-02 11:12:47

回答

1

我希望這會幫助你,

<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" > 

<VideoView 
    android:id="@+id/videoView" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

</RelativeLayout> 
+0

這應該工作,雖然fill_parent和match_parent做同樣的事情,fill_parent在sdk 8中被重命名爲match_parent,所以我們應該只使用match_parent。 – speedynomads 2014-09-02 11:39:43

+0

它的工作原理,值得一提的是關鍵修改是將LinearLayout更改爲RelativeLayout。另外請確保您添加Dhruti發佈的行以使其正常工作。 – user2565010 2014-09-02 11:42:56

+0

LinearLayout將視頻視圖放置在頂部,以便您可以在視頻視圖下方找到綠色空間,但相關佈局會執行您想要的操作。 – RajeshVijayakumar 2014-09-02 11:44:18