我想在我的视图分页器(滑块)的片段中创建一个编辑文本。这是我在DetailFragment2.java中已经完成的工作:
public View onCreateView(LayoutInflater inflater,
Bundle savedInstanceState) {
LayoutInflater inflater2 = getActivity().getLayoutInflater();
aView = inflater2.inflate(R.layout.details2, null);
EditText notatki = (EditText) aView.findViewById(R.id.editText1);
//notatki = (EditText) getView().findViewById(R.id.editText1);
SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
notatki.setText(settings.getString("value", "raz dwa trzy"));
return notatki;
}
和details2.xml
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
>
<EditText
android:id="@+id/editText1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:background="#00000000"
android:ems="10"
android:inputType="textMultiLine" >
<requestFocus />
</EditText>
</RelativeLayout>
我仍然无法在该视图中看到任何edittext字段。我做错了什么?
我以这种方式改变它并且它有效,感谢您的帮助:
View view = inflater.inflate(R.layout.details2, container, false);
EditText notatki = (EditText) view.findViewById(R.id.editText1);
SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
notatki.setText(settings.getString("value", "raz dwa trzy"));
return view;
答案 0 :(得分:1)
您的编辑文字已存在,但您只是设置了透明背景,因此您无法看到它。
android:background="#00000000"
你有4对零,所以格式是 AARRGGBB 第一个 AA - 在你的情况下为零 - 设置alpha = 0
所以背景是完全透明的。
尝试将背景设置为#RR0000或仅使用 RRGGBB 格式(#000000)
修改强> 由于上面没有解决问题,尝试更新你的布局膨胀方式
public View onCreateView(LayoutInflater inflater, ViewGroup parent,
Bundle savedInstanceState) {
aView = inflater.inflate(R.layout.details2, parent, false);
EditText notatki = (EditText) aView.findViewById(R.id.editText1);
//notatki = (EditText) getView().findViewById(R.id.editText1);
SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
notatki.setText(settings.getString("value", "raz dwa trzy"));
return notatki;
}
以下两行是最重要的:
public View onCreateView(LayoutInflater inflater, ViewGroup parent,
Bundle savedInstanceState) {
和
aView = inflater.inflate(R.layout.details2, parent, false);