开发者

how to get the output of a string in setText?

here is my c开发者_JS百科ode...

package sortarray.com;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class SortArray extends Activity {
    ArrayList<String[]> matchedFruits = new ArrayList<String[]>();
TextView selection;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    String fruits[] = new String[7];//Sorted array
    fruits[0] = "apple";
    fruits[1] = "capricot";
    fruits[2] = "banana";
    fruits[3] = "mango";
    fruits[4] = "melon";
    fruits[5] = "pineapple";
    fruits[6] = "peach";
    char currChar=fruits[0].charAt(0);//Get first char of first element

    boolean match=false;
    int len=fruits.length;
    List<String> tmp = new ArrayList<String>();

    for(int i=1;i<len;i++)
    {
    Log.d("Comparing ", fruits[i].charAt(0)+","+currChar);
    if (fruits[i].charAt(0)==currChar)
    {
    if (match==false)//new match?
    {
    match=true;//Reset search
    tmp.clear();//clear existing items
    tmp.add(fruits[i-1]);
    Log.d("Started new list ", fruits[i-1]);
    }
    else
    {
    tmp.add(fruits[i-1]);
    Log.d("Added to list ", fruits[i-1]);
    }
    }
    else
    {
    match=false;
    tmp.add(fruits[i-1]);
    matchedFruits.add(tmp.toArray(new String[tmp.size()]));//add to final list
    Log.d("Finished a list ", fruits[i-1]);
    tmp.clear();//clear existing items

    }
    currChar=fruits[i].charAt(0);


    }
    tmp.add(fruits[len-1]);
    matchedFruits.add(tmp.toArray(new String[tmp.size()]));//add left over items
    printList();
    }

    void printList()
    {
    //Print the list 
    for(int i=0;i<matchedFruits.size();i++)
    {
    String tmp2[]= matchedFruits.get(i);
    for (int j=0;j<tmp2.length;j++)
    {
     //Log.d("Final list", "Array #"+i+"["+j+"],"+tmp2[j]);
        **//selection.setText(tmp2[j].toString());**
    }
    }
    }

    }

i want to print the output of string using the selection.setText(); // selection.setText(tmp2[j].toString());** but not able to do so....

plz help me..


You have to bind your textView in your java code with one in your R.layout.main.

In layout, main.xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/tv"
    />
</LinearLayout>

In java :

TextView selection = (TextView) findViewById(R.id.tv);
String mssg;
for (int j=0;j<tmp2.length;j++)
{
    mssg += tmp2[j].toString());
}

selection.setText(mssg);


import java.util.ArrayList;
import java.util.List;

 import android.app.Activity;
 import android.os.Bundle;
 import android.util.Log;
 import android.widget.TextView;

 public class TestActivity extends Activity {
ArrayList<String[]> matchedFruits = new ArrayList<String[]>();
TextView selection;

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

    String fruits[] = new String[7];// Sorted array
    fruits[0] = "apple";
    fruits[1] = "capricot";
    fruits[2] = "banana";
    fruits[3] = "mango";
    fruits[4] = "melon";
    fruits[5] = "pineapple";
    fruits[6] = "peach";
    char currChar = fruits[0].charAt(0);// Get first char of first element

    boolean match = false;
    int len = fruits.length;
    List<String> tmp = new ArrayList<String>();

    for (int i = 1; i < len; i++) {
        Log.d("Comparing ", fruits[i].charAt(0) + "," + currChar);
        if (fruits[i].charAt(0) == currChar) {
            if (match == false)// new match?
            {
                match = true;// Reset search
                tmp.clear();// clear existing items
                tmp.add(fruits[i - 1]);
                Log.d("Started new list ", fruits[i - 1]);
            } else {
                tmp.add(fruits[i - 1]);
                Log.d("Added to list ", fruits[i - 1]);
            }
        } else {
            match = false;
            tmp.add(fruits[i - 1]);
            matchedFruits.add(tmp.toArray(new String[tmp.size()]));// add to
                                                                    // final
                                                                    // list
            Log.d("Finished a list ", fruits[i - 1]);
            tmp.clear();// clear existing items
enter code here
        }
        currChar = fruits[i].charAt(0);

    }
    tmp.add(fruits[len - 1]);
    matchedFruits.add(tmp.toArray(new String[tmp.size()]));// add left over
                                                            // items
    printList();

}

void printList() {
    // Print the list
// create obj of TextView 
    selection =new TextView(this);
    int k=0;
    for (int i = 0; i < matchedFruits.size(); i++) {
        String tmp2[] = matchedFruits.get(i);


        for (int j = 0; j < tmp2.length; j++) {
            Log.d("Final list", "Array #" + i + "[" + j + "]," + tmp2[j]);
            selection.setText(tmp2[j].toString());
  // set textview in contentview
            setContentView(selection);

        }
    }
}

}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜