无法在包含布局子视图上设置字体

not able to set typeface on include layout childviews

我有在每个布局中重复的 textview 和 edittext,所以我使用 include tag 来避免 重复。

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/linearLayout2"
    android:overScrollMode="never">

    <LinearLayout
           android:id="@+id/llEmployee"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:orientation="vertical"
           android:visibility="gone">

              <include
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:id="@+id/llCompany"
                  layout="@layout/layout_company" />              
        </LinearLayout>

         <LinearLayout
             android:id="@+id/llContactor"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:orientation="vertical"
             android:visibility="gone">

              <include
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:id="@+id/llCompany"
                 layout="@layout/layout_company" />              
        </LinearLayout>

        <LinearLayout
            android:id="@+id/llManager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:visibility="gone">

              <include
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:id="@+id/llCompany"
                  layout="@layout/layout_company" />              
        </LinearLayout>
</ScrollView>

layout_company.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/llCompany"
    android:orientation="vertical"
    tools:showIn="@layout/activity_verify">

    <TextView
        android:id="@+id/txtCompanyName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="5dp"
        android:text="@string/companyname"
        android:textColor="@color/greyLight" />

    <EditText
        android:id="@+id/edtCompanyName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:imeOptions="actionNext"
        android:inputType="text"
        android:maxLines="1"
        android:textColor="@color/black"
        android:textSize="16sp"
        android:theme="@style/MyEditTextTheme" />

</LinearLayout>

现在我的问题是我无法为那些包含布局的文本视图设置字体。

我试过这个 link:findViewById not working for an include?

但它对我不起作用..有什么我遗漏的吗?

在 java 文件中:

LinearLayout view = (LinearLayout) findViewById(R.id.llCompany);
txtCompanyName = (TextView)view.findViewById(R.id.txtCompanyName);
edtCompanyName = (EditText) view.findViewById(R.id.edtCompanyName);
txtCompanyName.setTypeface(Glob.avenir(context));
edtCompanyName.setTypeface(Glob.avenir(context));

我也试过没有id(直接方法),它也不起作用。 谢谢。

您对所有包含使用相同的 ID。尝试为所有包含项提供唯一 ID。