2013-01-20 147 views
0

我在玩http://developer.android.com/training/basics/的教程。第一個活動由TextViewButton組成。RelativeLayout - 調整TextView的位置

Button發送到第二個活動。

第二個活動由編程創建的TextView組成,並顯示來自第一個TextView的消息。 View具有相對佈局。

我想要TextView跨越家長的寬度和內容的高度,並且位於View的頂部。我也想把文本居中。

--------- 
- xxx - 
-  - 
-  - 
-  - 
-  - 
--------- 

該文本是在正確的地方。但是,如果我更改TextView的背景顏色,並且所有「視圖」都會獲得該顏色。這是預期的嗎?

只是爲了安全起見?

  • layout*參數將調整View內的TextView
  • gravity參數將調整TextView中的文字。

而且本教程之後,我並沒有修改初始XML,其中包括一個TextView用的「Hello World」的View中心。 TextView現在在哪裏?

在Eclipse IDE:

--------- 
-  - 
-  - 
- Hello - 
-  - 
-  - 
--------- 

在執行:

--------- 
- xxx - 
-  - 
-  - 
-  - 
-  - 
--------- 

的培訓相關代碼:

Intent intent = getIntent(); 
    String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE); 

    // Create the text view 
    TextView textView = new TextView(this); 
    textView.setId(1); 
    textView.setTextSize(40); 
    textView.setTextColor(Color.RED); 
    textView.setBackgroundColor(Color.BLACK); 
    textView.setText(message); 

    RelativeLayout.LayoutParams lay = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); 

    textView.setLayoutParams(lay); 

    textView.setGravity(Gravity.CENTER_HORIZONTAL); 

    // Set the text view as the activity layout 
    setContentView(textView); 

感謝

+0

「編程方式」應該被更加強調。除了「閱讀不同的佈局類型」之外,其實沒有答案。謝謝 –

回答

1

我希望TextView跨越父級的寬度和內容的高度,並且位於視圖的頂部。我也想把文本居中。

設置TextView的屬性:

  • layout_width = match_parent
  • layout_height = WRAP_CONTENT
  • layout_gravity =頂部
  • 比重= center_horizo​​nal

只是爲了爲O安全的一面?

佈局參數將調整視圖內的TextView。重力參數將調整TextView中的文本。

佈局參數會調整父母視圖中的TextView,是的。 重力參數是正確的。

以防萬一你錯過了,因爲你剛開始this是TextView的參考。

另外:在介紹之後,我並沒有修改初始XML,這 包括與「Hello World」的一個TextView在視圖中心。 現在在哪裏?

/res/layout/activity_main.xml應該是我相信的。

(小提示:試着問只是一個問題,或者至少你所有的問題集中在一個地方,你通常會得到更好的答案的方式。)