运行应用程序时无法加载视图

Posted

技术标签:

【中文标题】运行应用程序时无法加载视图【英文标题】:Cant get view to load up when running app 【发布时间】:2011-05-16 15:52:48 【问题描述】:

我正在为 android 编写我的第一个应用程序,但我无法加载 xml 布局。我查看了参考资料,似乎无法找到问题所在。代码编译并运行,但屏幕上显示的只是一个黑色页面,顶部有状态和标题栏。

任何想法

public void OnCreate(Bundle savedInstanceState)

    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);
    View cancelButton= findViewById(R.id.button1);
    cancelButton.setOnClickListener(this);
    View sevenButton= findViewById(R.id.button2);
    sevenButton.setOnClickListener(this);
    View fourButton= findViewById(R.id.button3);
    fourButton.setOnClickListener(this);
    View oneButton= findViewById(R.id.button4);
    oneButton.setOnClickListener(this);
    View zeroButton= findViewById(R.id.button5);
    zeroButton.setOnClickListener(this);
    View divideButton= findViewById(R.id.button6);
    divideButton.setOnClickListener(this);
    View eightButton= findViewById(R.id.button7);
    eightButton.setOnClickListener(this);
    View fiveButton= findViewById(R.id.button8);
    fiveButton.setOnClickListener(this);
    View twoButton= findViewById(R.id.button9);
    twoButton.setOnClickListener(this);
    View pointButton= findViewById(R.id.button10);
    pointButton.setOnClickListener(this);
    View timesButton= findViewById(R.id.button11);
    timesButton.setOnClickListener(this);
    View nineButton= findViewById(R.id.button12);
    nineButton.setOnClickListener(this);
    View sixButton= findViewById(R.id.button13);
    sixButton.setOnClickListener(this);
    View threeButton= findViewById(R.id.button14);
    threeButton.setOnClickListener(this);
    View shiftButton= findViewById(R.id.button15);
    shiftButton.setOnClickListener(this);
    View backButton= findViewById(R.id.button16);
    backButton.setOnClickListener(this);
    View addButton= findViewById(R.id.button17);
    addButton.setOnClickListener(this);
    View minusButton= findViewById(R.id.button18);
    minusButton.setOnClickListener(this);
    View equalsButton= findViewById(R.id.button19);
    equalsButton.setOnClickListener(this);



更新 这是xml文件的代码

<?xml version="1.0" encoding="utf-8"?>
<TableLayout android:id="@+id/main" 
             android:layout_ 
             xmlns:android="http://schemas.android.com/apk/res/android" 
             android:layout_ 
             android:background="@drawable/trondroid">
    <TableRow android:layout_ 
              android:id="@+id/tableRow1" 
              android:layout_ 
              android:layout_gravity="center|center_horizontal" 
              android:layout_marginLeft="6dip" 
              android:layout_marginTop="100dip">
        <LinearLayout android:orientation="vertical" 
                      android:id="@+id/linearLayout1" 
                      android:layout_ 
                      android:layout_>
            <Button android:text="c" 
                    android:id="@+id/button1" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="7" 
                    android:id="@+id/button2" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="4" 
                    android:id="@+id/button3" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="1" 
                    android:id="@+id/button4" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="0" 
                    android:id="@+id/button5" 
                    android:layout_ 
                    android:layout_>
            </Button>
        </LinearLayout>
        <LinearLayout android:id="@+id/linearLayout2" 
                      android:orientation="vertical" 
                      android:layout_ 
                      android:layout_>
            <Button android:text="/" 
                    android:id="@+id/button6" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="8" 
                    android:id="@+id/button7" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="5" 
                    android:id="@+id/button8" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="2" 
                    android:id="@+id/button9" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="." 
                    android:id="@+id/button10" 
                    android:layout_ 
                    android:layout_>
            </Button>
        </LinearLayout>
        <LinearLayout android:id="@+id/linearLayout3" 
                      android:layout_ 
                      android:orientation="vertical" 
                      android:layout_>
            <Button android:text="*" 
                    android:id="@+id/button11" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="9" 
                    android:id="@+id/button13" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="6" 
                    android:id="@+id/button14" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="3" 
                    android:id="@+id/button15" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="" 
                    android:id="@+id/button16" 
                    android:layout_ 
                    android:layout_>
            </Button>
        </LinearLayout>
        <LinearLayout android:layout_ 
                      android:id="@+id/linearLayout4" 
                      android:orientation="vertical" 
                      android:layout_>
            <Button android:text="" 
                    android:id="@+id/button12" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="+" 
                    android:id="@+id/button17" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="-" 
                    android:id="@+id/button18" 
                    android:layout_ 
                    android:layout_>
            </Button>
            <Button android:text="=" 
                    android:id="@+id/button19" 
                    android:layout_ 
                    android:layout_>
            </Button>
        </LinearLayout>
    </TableRow>
</TableLayout>

【问题讨论】:

删除你的代码,直到它开始工作。然后开始把东西一件一件地放回去,直到它坏掉。容易。 【参考方案1】:

你好 :) 对于 OnClickListener,您实际上必须提供 OnClickListener 实现。您传递“this”是否意味着您的活动也实现了 View.OnClickListener?因为如果没有 - 上面的代码将不起作用。但还有其他问题:您的布局(如果您已经在 XML 中定义了它,则无论是否设置了 OnClickListener 都应该显示出来。您能否将您的 XMl 布局发布到?

干杯, Ready4Android

附:如果这真的是你的第一个应用程序,你可能想先从一些教程开始 :) 你会在那里学到很多基本的东西,这将帮助你入门。一个不错的开始的地方是官方developer pages of Android。

【讨论】:

我已经实现了 OnClickListener,并发布了 xml 文件。

以上是关于运行应用程序时无法加载视图的主要内容,如果未能解决你的问题,请参考以下文章

无法将图像加载到编辑视图中的部分视图

无法从视图控制器手动加载 xib?

无法加载视图状态。仅在 IE 中发生错误

iOS:相机在第一次加载视图控制器时无法识别二维码

无法在表格视图中加载核心数据?

在 Android 中加载动态项目时无法将页脚视图添加到列表视图