Android 如何从ListView获取TextView以设置字体?安卓

Android 如何从ListView获取TextView以设置字体?安卓,android,listview,textview,Android,Listview,Textview,我正在为Android应用程序开发列表视图。请告诉我如何使用我的字体查看列表中的TextViews Typeface typeface; TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.menu); String fontPath =

我正在为Android应用程序开发列表视图。请告诉我如何使用我的字体查看列表中的
TextView
s

Typeface typeface;
TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.menu);

    String fontPath = "fonts/28.ttf";
    typeface = Typeface.createFromAsset(getAssets(), fontPath); 

    ListView menuList = (ListView) findViewById(R.id.ListView_Menu);

    String[] items = {
            getResources().getString(R.string.menu_item_play),
            getResources().getString(R.string.menu_item_settings),
            getResources().getString(R.string.menu_item_help),
            getResources().getString(R.string.menu_item_exit)
    };



    ArrayAdapter<String> adapt = new ArrayAdapter<String>(this, R.layout.menu_item, items);
    menuList.setAdapter(adapt);

    //View v1=(View)menuList.getItemAtPosition(0);
字体;
文本视图文本视图;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
字符串fontPath=“font/28.ttf”;
typeface=typeface.createFromAsset(getAssets(),fontPath);
ListView菜单列表=(ListView)findViewById(R.id.ListView\u菜单);
字符串[]项={
getResources().getString(R.string.menu\u item\u play),
getResources().getString(R.string.menu\u item\u设置),
getResources().getString(R.string.menu\u item\u help),
getResources().getString(R.string.menu\u item\u exit)
};
ArrayAdapter adapt=新的ArrayAdapter(此,R.layout.menu_项,项);
菜单列表设置适配器(自适应);
//视图v1=(视图)菜单列表。getItemAtPosition(0);
  • 创建一个row.xml,其中包含id为text的TextView

  • 创建自定义适配器并重写getView()方法,以便在行中找到textview并设置其字体

  • 这是我所使用的代码中的一个示例:

    @Override
        public View getView ( int position, View convertView, ViewGroup parent )
        {
            View resultView = convertView;
            TextView t = null;
    
            if ( resultView == null )
            {
                //row layout defined in xml containing a textview with id: row.
                LayoutInfalter inflater = LayotuInflater.from(context);
                resultView = inflater.inflate ( R.layout.row, null );
    
    
                t = resultView.findViewById(R.id.text);
                t.setTypeface(/*typeface here*/)
    
                resultView.setTag ( holder );
            }else
            {
                t = (TextView) resultView.findViewById(R.id.text);
            }
            t.setText(/*text for the item at this position in the list*/)
    
            return resultView;
        }
    

    您需要创建一个客户适配器,覆盖getView方法,并在该方法中设置textview的字体。