2012-07-03 215 views
0

我有一個看起來有點像速度表的自定義視圖。將edittext添加到自定義視圖

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:slider="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

<com.mysite.view.SeekBar_Speedometer 
    android:id="@+id/slider" 
    slider:fill_clockwise_color="@color/lightgrey" 
    slider:fill_anticlockwise_color="@color/blue" 
    slider:fill_handle_color="@color/green" 
    slider:fill_handle_width="3" 
    slider:angle_start="120" 
    slider:angle_end="60" 
    slider:fill_start_angle="120" 
    slider:score_min="0" 
    slider:score_max="300" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" /> 

</LinearLayout> 

我想添加一個edittext到車速表的中心。

就像你可以在畫布上繪製文本一樣,我可以從我的視圖中以相同的方式添加一個edittext?我不這麼認爲!

問題是,我該如何去添加這個edittext到我的自定義視圖?

回答

1

自定義視圖類中,你可以做:

EditText edit = new EditText(context); 
addView(edit); 

要做到這一點您的自定義視圖必須延伸的ViewGroup中(的LinearLayout,RelativeLayout的,ECC ..)

+0

多少工作是從改變視圖組的視圖? – HGPB

+0

基本上沒什麼。這取決於你的觀點。只需更改您的類擴展LinearLayout或RelativeLayout。 –

+0

啊!車速表只是消失。看起來像onDraw可能會有不同的工作? – HGPB

相關問題