0
XML 레이아웃에서 사용자 정의보기를 만들기 위해 LayoutInflater를 사용하려고합니다.LayoutInflater가 XML을 제대로 표시하지 않습니다.
MainActivity :
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LinearLayout layout = (LinearLayout) findViewById(R.id.t1);
Widget w = new Widget(getApplicationContext());
layout.addView(w.getView());
}
위젯 :
private Context context;
public Widget(Context context) {
this.context = context;
}
public View getView(){
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.widget, null);
((Button)view.findViewById(R.id.button)).setText("button");
((TextView)view.findViewById(R.id.textView)).setText("text");
return view;
}
widget.xml :
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New Button"
android:id="@+id/button"
android:layout_gravity="center_horizontal" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Large Text"
android:id="@+id/textView"
android:layout_gravity="center_horizontal" />
</LinearLayout>
그러나 나는이 문제를 가지고 :
활동은 TextView없이 버튼 만 표시합니다.
단추에는 검정색과 흰색 텍스트가 있지만 미리보기에는 회색과 검정색 텍스트가 있습니다.
어떻게 이러한 문제를 해결할 수 있습니까?
감사, 문제는 색 때문. 그리고 레이아웃 (예 : 검정색 텍스트가있는 회색 버튼)을 열면 미리보기에서 볼 수있는 스타일의 기본 스타일을 어디에서 확인할 수 있습니까? –
발견 된 해결책 : http://stackoverflow.com/a/2119625/2656632 –