Привет я пытался заполнить listView из базы данных SQL, я получаю ошибки, пытаясь связать массив строк с адаптером массива, ошибки в строках,
setListAdapter (new ArrayAdapter<String>(this, R.layout.list_item, STORYLIST));
и
ListView menulist = getListView();
вот мой код, любая помощь будет принята с благодарностью
public class MainActivity extends Activity {
/** Called when the activity is first created. */
static String result = "";
InputStream is = null;
static String storyNames = "";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setListAdapter (new ArrayAdapter<String>(this, R.layout.list_item, STORYLIST));
ListView menulist = getListView();
menulist.setTextFilterEnabled(true);
menulist.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (position == 0) {
// Intent buttona = new Intent(view.getContext(), OneActivity.class);
// startActivity(buttona);
}
if (position == 1) {
// Intent buttonb = new Intent(view.getContext(), TwoActivity.class);
// startActivity(buttonb);
}
if (position == 2) {
// Intent buttonc = new Intent(view.getContext(), ThreeActivity.class);
// startActivity(buttonc);
}
if (position == 3) {
//Intent buttond = new Intent(view.getContext(), FourActivity.class);
//startActivity(buttond);
}
}
});
//end of oncreate()
}
public void returnJson(){
//TextView one = (TextView) findViewById(R.id.textView1);
try{
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://10.0.2.2/textures_story_list.php");
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e) {
// one.setText("error3");
}
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result = sb.toString();
}catch(Exception e) {
// one.setText("error2");
}
try{
JSONArray jArray = new JSONArray(result);
String storyNames = "";
for(int i = 0;i<jArray.length();i++){
storyNames += jArray.getJSONObject(i).getString("story_name") + "\n";
}
// one.setText(storyNames);
}
catch(JSONException e) {
// one.setText("error1");
}
return;
//end of returnJson()
}
String[] STORYLIST = new Gson().fromJson(result,String[].class);
//end of class body
}
iv изменил это на это, все еще не работает
public class MainActivity extends ListActivity {
/** Called when the activity is first created. */
static String result = "";
InputStream is = null;
static String storyNames = "";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView menulist = getListView();
setListAdapter (new ArrayAdapter<String>(this, R.layout.list_item, STORYLIST));
menulist.setTextFilterEnabled(true);
menulist.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (position == 0) {
// Intent buttona = new Intent(view.getContext(), OneActivity.class);
// startActivity(buttona);
}
if (position == 1) {
// Intent buttonb = new Intent(view.getContext(), TwoActivity.class);
// startActivity(buttonb);
}
if (position == 2) {
// Intent buttonc = new Intent(view.getContext(), ThreeActivity.class);
// startActivity(buttonc);
}
if (position == 3) {
//Intent buttond = new Intent(view.getContext(), FourActivity.class);
//startActivity(buttond);
}
}
});
//end of oncreate()
}
public void returnJson(){
//TextView one = (TextView) findViewById(R.id.textView1);
try{
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://10.0.2.2/textures_story_list.php");
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e) {
// one.setText("error3");
}
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result = sb.toString();
}catch(Exception e) {
// one.setText("error2");
}
try{
JSONArray jArray = new JSONArray(result);
String storyNames = "";
for(int i = 0;i<jArray.length();i++){
storyNames += jArray.getJSONObject(i).getString("story_name") + "\n";
}
// one.setText(storyNames);
}
catch(JSONException e) {
// one.setText("error1");
}
return;
//end of returnJson()
}
String[] STORYLIST = new Gson().fromJson(storyNames,String[].class);
//end of class body
}