如何创建一个数组字符串来打印android中的元素列表

时间:2014-04-02 08:03:36

标签: java android listview

这里我将使用反射打印类中的所有方法,因此在正常的JAVA程序中它将打印。但在Android布局中,它只显示一种方法:

public static void main() throws Exception{
    Log.i("Ramu","I am here displayM ");
    Class o =Class.forName("android.view.AbsSavedState");
    Method M[]=o.getMethods();
    for( i=0;i<M.length;i++)
        methodname = M[i].getName();
    Listview.your_array_list.add(methodname);
    Listview.your_array_list.add(methodname);
    Log.i("Ramu","methode name "+ M[i].getName());
    //System.out.println(M[i].getName());
}

3 个答案:

答案 0 :(得分:1)

您的循环结束了下一行声明,并且您在循环完成后仅在最终索引值处打印方法名称。尝试使用大括号,这将解决问题。检查以下代码

public static void main() throws Exception{
    Log.i("Ramu","I am here displayM ");
    Class o =Class.forName("android.view.AbsSavedState");
    Method M[]=o.getMethods();
    for( i=0;i<M.length;i++){
        methodname = M[i].getName();
    Listview.your_array_list.add(methodname);
    Listview.your_array_list.add(methodname);
    Log.i("Ramu","methode name "+ M[i].getName());
}

    //System.out.println(M[i].getName());
}

答案 1 :(得分:0)

您已忘记放置括号,表示您未获得预期的输出:

Class o = Class.forName("android.view.AbsSavedState");
Method M[] = o.getMethods();
for (int i = 0; i < M.length; i++) {
    methodname = M[i].getName();
    Listview.your_array_list.add(methodname);
    Log.i("Ramu", "method name " + methodname);
}

答案 2 :(得分:0)

你忘了{ } for loop的家伙,请将其保留在{ }然后尝试

for( i=0;i<M.length;i++)
{

        methodname = M[i].getName();
    Listview.your_array_list.add(methodname);
     Log.i("Ramu","methode name "+ M[i].getName());
}