这里是绝对的Android开发初学者,所以请多多包涵。我试图用我在 ActionBar 中的标题来实现两件事:
- 居中对齐标题文本
- 为标题文本使用自定义字体
我正在尝试遵循此答案,因此请先查看该答案。
MainActivity.java的内容
// ATTEMPT TO STYLE THE ACTIONBAR
this.getActionBar().setDisplayShowCustomEnabled(true);
this.getActionBar().setDisplayShowTitleEnabled(false);
LayoutInflater inflator = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.titleview, null);
//if you need to customize anything else about the text, do it here.
//I'm using a custom TextView with a custom font in my layout xml so all I need to do is set title
((TextView)v.findViewById(R.id.title)).setText(this.getTitle());
//assign the view to the actionbar
this.getActionBar().setCustomView(v);
我创建了一个新的 XML 文件:layout/titleview.xml对应于R.layout.titleview
上面。它包含:
<com.muppethead.app.name.CustomTextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:textSize="20dp"
android:maxLines="1"
android:ellipsize="end"
android:text="MY APP TITLE" />
这给出了错误:
The following classes could not be found: com.muppethead.app.name.CustomTextView
问题
我哪里错了?除了修复上述错误,我在哪里引用我的字体,它位于assets/fonts/font.otf
?那么文本居中呢?
我得说,Google 很遗憾没有通过 XML 实现这一点。它消除了新开发人员创造任何有吸引力的东西的可能性。
在此先感谢您的帮助。