2017-05-20 4 views
0

이 응용 프로그램에서는이 확인란을 선택하거나 이름을 선택 취소해야합니다. 나는 그것을 성공적으로 할 수있다. 그러나 제 출력물에는 그림과 같이 각 출력을 시작하고 닫는 대괄호와 쉼표가 있습니다. 나는 당신이 방법을 아래에 사용할 수 있습니다 ** 쉼표 **, ** screenshot출력 표시 Android에서 문자열의 Arraylist 사용

package com.example.jaspreetsingh.selectlist; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Adapter; 
import android.widget.ArrayAdapter; 
import android.widget.CompoundButton; 
import android.widget.ListView; 
import android.widget.TextView; 
import android.widget.Toast; 

import java.util.ArrayList; 

import static android.R.attr.name; 
import static android.os.Build.VERSION_CODES.N; 

public class MainActivity extends AppCompatActivity implements android.widget.CompoundButton.OnCheckedChangeListener { 

    ListView listView; 
    ArrayList<Names> nameList; 
    NameAdapter nameAdapter; 
    String firstName; 
    String lastName; 
    boolean selection; 
    ArrayList<String> summary = new ArrayList<String>(); 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     listView = (ListView) findViewById(R.id.lv); 
     displayViewList(); 
    } 

    public void displayViewList() { 

     nameList = new ArrayList<Names>(); 
     nameList.add(new Names("Mike", "Warner", false)); 
     nameList.add(new Names("Chris", "Evans", false)); 
     nameList.add(new Names("Robert", "Dowery", false)); 
     nameList.add(new Names("Jon", "Jones", false)); 
     nameList.add(new Names("Tom", "Brady", false)); 

     nameAdapter = new NameAdapter(nameList, this); 

     listView.setAdapter(nameAdapter); 
    } 

    @Override 
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
     int pos = listView.getPositionForView(buttonView); 
     if (pos != ListView.INVALID_POSITION) { 
      Names n = nameList.get(pos); 
      n.setSelected(isChecked); 

      selection = isChecked; 
      firstName = n.getFirstName(); 
      lastName = n.getLastName(); 
      String fullName = firstName + lastName; 

      if (selection) { 
       summary.add(firstName); 
      } 
      if (!selection) { 
       summary.remove(firstName); 
      } 
     } 
    } 


    public void button(View view) { 
     displayText(summary); 
    } 

    public void displayText(ArrayList<String> result) { 
     TextView resultTextView = (TextView) findViewById(R.id.result_text_view); 
     resultTextView.setText(result.toString()); 
    } 
} 

답변

-1

은 어떤 대괄호 ** []없이 이름 만되고 싶어

public static String listToString(List<String> list) 
    { 
     return TextUtils.join(",", list); 
    } 

    public static List<String> stringToList(String string) 
    { 
     if(string==null) 
      return new ArrayList<String>(); 
     else 
      return new ArrayList<String>(Arrays.asList(TextUtils.split(string, ","))); 
    }