0

列出的代码工作得很好,但我想要更多。

    @Override
public View onCreateView(LayoutInflater inflater,
     ViewGroup container,
     Bundle savedInstanceState)
{
    Log.i(TAG, "HelpDetailsFragment.onCreateView() getCurrentIndex(): "+getCurrentIndex());

    Log.i(TAG, "HelpDetailsFragment.onCreateView() container.getChildCount() first log: "+container.getChildCount());

    FrameLayout frameLayout = new FrameLayout(getActivity());

    TextView headerText = (TextView) new TextView(getActivity());   

    // headerText.inflate(getActivity(), R.id.textView1, null);

    int height = (int) TypedValue.applyDimension(
               TypedValue.COMPLEX_UNIT_DIP, 50, getActivity()
               .getResources().getDisplayMetrics());
    headerText.setHeight(height);
    headerText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 24);
    headerText.setText(HelpScreenData.HELP_HEADERS[getCurrentIndex()]);     

    frameLayout.addView(headerText);

    return  frameLayout;

}

我尝试通过注释掉的行使用 XML 文件中的值更多地自定义文本外观。但这行不通,可以/有人请帮忙吗?

4

1 回答 1

0

首先,不要这样创建你的布局!我强烈建议您使用基于 XML 的布局。然后在您的onCreateView()方法中膨胀您的 XML 布局并返回它。

例子:

@Override
public View onCreateView(LayoutInflater inflater,
     ViewGroup container,
     Bundle savedInstanceState)
{

    View v = inflater.inflate(R.layout.my_layout, null); //my_layout is your layout defined in XML  

    TextView textView = v.findViewById(R.id.my_textview);
    Button button = v.findViewById(R.id.my_button);
    //do whatever with your textView, set OnClickListener to button etc...        


    return  v; //return inflated layout 
}

我建议您在Android Dev 网站上阅读一些有关布局的基本教程。

于 2013-08-21T21:39:01.917 回答