Android 创建表格布局有困难吗?

Android 创建表格布局有困难吗?,android,android-layout,android-tablelayout,Android,Android Layout,Android Tablelayout,我不知道下面代码中的问题是什么。但我知道问题出在哪里。它来自方法createTL()。它不幸停止。请帮助我解决此问题。我想创建n行和4列EditText视图。 编辑:现在我初始化了et和tr,但仍然出现错误。这是更新的代码 public TableLayout createTL(int r) { int c=4; LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CO

我不知道下面代码中的问题是什么。但我知道问题出在哪里。它来自方法
createTL()
。它不幸停止。请帮助我解决此问题。我想创建n行和4列
EditText
视图。 编辑:现在我初始化了et和tr,但仍然出现错误。这是更新的代码

 public TableLayout createTL(int r)
 {
    int c=4;
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
myTL=new TableLayout(Ybus_Activity.this);
myTL.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT));
    myTL.setStretchAllColumns(true);
TableRow[] tr = new TableRow[r];
    EditText[][] et = new EditText[r][c];
    Arrays.fill(et,"0.0");
    Arrays.fill(tr,et);
for(int i=0;i<r;i++)
    {
      for(int j=0;j<4;j++)
          {
            et[i][j].setLayoutParams(params);
            et[i][j].setWidth(100);
            et[i][j].setImeOptions(EditorInfo.IME_ACTION_NEXT);
            et[i][j].setInputType(InputType.TYPE_CLASS_NUMBER);
            et[i][j].setKeyListener(DigitsKeyListener.getInstance());
            et[i][j].setMaxLines(1);
            tr[i].addView(et[i][j]);
            myTL.addView(tr[i]);
            }
    }
//I already have LinearLayout named "main" under onCreate() method...
//main.addView(myTL);
return myTL;

您正在
EditText[]]et=newedittext[r][c]处启动一个
EditText
数组null
对象。然后对那些
null
对象调用方法,这就是为什么会得到
NullPointerException

在调用任何方法之前,需要用初始化的
EditText
对象填充
et

这同样适用于
TableRow[]tr=newtablerow[r]


编辑:请注意,您可能需要将退货类型更改为
TableLayout
,或者将
myTL
对象添加到屏幕上显示的视图中。

发布您对上帝之袋的stacktrace!什么是堆栈跟踪?我在哪里可以找到?发布日志。可用于DDMS@MD我在Ybus_活动中的第159行发布了我的日志。有些内容为空。哪一行是159?为了方便地填充数组,您可以使用
arrays.fill()
我认为它更像
arrays.fill(et,newedittext(context))。不过我不太确定。我以前没用过。由于它是一个多维数组,这也给我带来了额外的困难。你可以在谷歌上搜索一下如何使用array.fillbro还有一个疑问……既然tr(tablerow)不保存数据,那么是否可以初始化tr(tablerow)呢
02-22 23:15:01.315: D/AndroidRuntime(6445): Shutting down VM
02-22 23:15:01.315: W/dalvikvm(6445): threadid=1: thread exiting with uncaught exception (group=0xb2e26288)
02-22 23:15:01.345: E/AndroidRuntime(6445): FATAL EXCEPTION: main
02-22 23:15:01.345: E/AndroidRuntime(6445): java.lang.ArrayStoreException: java.lang.String cannot be stored in an array of type android.widget.EditText[][]
02-22 23:15:01.345: E/AndroidRuntime(6445):     at java.util.Arrays.fill(Arrays.java:966)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at com.gkn.powersystemcalc.Ybus_Activity.createTL(Ybus_Activity.java:156)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at com.gkn.powersystemcalc.Ybus_Activity$2.onClick(Ybus_Activity.java:140)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.view.View.performClick(View.java:4084)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.view.View$PerformClick.run(View.java:16966)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.os.Handler.handleCallback(Handler.java:615)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.os.Handler.dispatchMessage(Handler.java:92)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.os.Looper.loop(Looper.java:137)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at android.app.ActivityThread.main(ActivityThread.java:4745)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at java.lang.reflect.Method.invokeNative(Native Method)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at java.lang.reflect.Method.invoke(Method.java:511)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
02-22 23:15:01.345: E/AndroidRuntime(6445):     at dalvik.system.NativeStart.main(Native Method)
02-22 23:15:01.385: W/ActivityManager(1026):   Force finishing activity com.gkn.powersystemcalc/.Ybus_Activity
02-22 23:15:01.545: D/dalvikvm(1026): GC_FOR_ALLOC freed 899K, 11% free 15374K/17159K, paused 84ms, total 86ms
02-22 23:15:02.074: W/ActivityManager(1026): Activity pause timeout for ActivityRecord{b3ac8e38 com.gkn.powersystemcalc/.Ybus_Activity}