简体   繁体   English

我如何使用arrayadapter?

[英]How I can use an arrayadapter?

I'm beginner in a Android programming but i know something about Java. 我是Android编程的初学者,但我对Java有所了解。 I need to know how to insert a multiplication table in a ListView ? 我需要知道如何在ListView插入一个乘法表吗? I do not have any idea how to do this. 我不知道该怎么做。

Here is what i have tried: 这是我尝试过的:

ArrayAdapter<String> adaptado = new ArrayAdapter<String>(Tablas_multDiego.this,android.R.layout.simple_list_item_1,tablas(1));
cmb_tabla.setAdapter(adaptado);

public String[] tablas(int tablas) {
   String[] res = new String[10];
   for (int i<=10;i++) {
      res[i]= tablas + "x" + i + "" + tablas * i;
   }
}

Thanks in advance. 提前致谢。

A fast way to do that: 一种快速的方法:

res / layout / list_item.xml res /布局/ list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:textSize="20sp" />

MainActivity.java MainActivity.java

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends ListActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        int yourNumber = 2;
        setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item,
                tablas(yourNumber)));

        ListView listView = getListView();
        listView.setTextFilterEnabled(true);

        listView.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                // When clicked, show a toast with the TextView text
                Toast.makeText(getApplicationContext(),
                        ((TextView) view).getText(), Toast.LENGTH_SHORT).show();
            }
        });
    }

    public String[] tablas(int tablas) {
        String[] res = new String[10];
        for (int i = 1; i <= 10; i++) {
            res[i - 1] = tablas + " x " + i + " = " + tablas * i;
        }

        return res;
    }

}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM