findViewById - 嵌套的LinearLayouts,找不到我的id - Android

时间:2012-06-25 17:36:46

标签: android

我在网上搜索无济于事。我试图设置textview的字体。它在我的main.xml文件中的自己的LinearLayout中。当我在OnCreate中编写代码时,它不会找到id或父线性布局。这是代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/background"
    android:orientation="vertical"
    android:weightSum="10.0" >

    <LinearLayout
        android:id="@+id/map_message_layout"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1.0"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/map_message"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="10dp"
            android:gravity="center_horizontal"
            android:text="@string/diagram" />

    </LinearLayout>

以下onCreate方法:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    LinearLayout = (LinearLayout) this.findViewById(R.id.map_message_layout)
    TextView maptxt = (TextView) findViewById(R.id.map_message);
    Typeface typeFace = Typeface.createFromAsset(getAssets(),"fonts/MuseoSans_100.otf");
    maptxt.setTypeface(typeFace);
}

谢谢!

1 个答案:

答案 0 :(得分:2)

您是否尝试过清洁程序?我之前发生了一些奇怪的事情,这解决了我的问题。在这种情况下不确定是否就是这样。