Naar content
Trending apps
  • Inbox by Gmail

  • Maps: Navigatie en OV

  • WhatsApp Messenger

  • Messenger

  • Facebook

Trending games
  • Dr. Mario World

  • Harry Potter: Wizards Unite

  • Breaking Bad: Criminal Elements

  • The Elder Scrolls: Blades

  • Ghostbusters World

Trending smartphones
  • Microsoft Surface Duo

  • OnePlus 7T Pro

  • Nokia 7.2

  • Xiaomi Mi 9T Pro

  • Samsung Galaxy Note 10 Plus

Nieuwste tablets
  • Samsung Galaxy Tab S6

  • Samsung Galaxy Tab A 10.5

  • Samsung Galaxy Tab S4

  • Samsung Galaxy Tab S3 9.7

  • Asus Zenpad 3S 10

Martin-San

Martin-San

  • Lid sinds 24 oktober 2011
  • Berichten 29
  • Reputatie 0
  • #1
  • 11 januari 2012
  • 01:07

hello,

ik heb mijn app nu bijna klaar ik heb de MYSQL connectie nu ook eindelijk.

alleen als ik bij de listview van de Json data een plaatje wil toevoegen dan krijg ik een rare error code.

ik heb nu dit :

mijn XML

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:typeface="serif"
android:textSize="16dp"
android:shadowColor="#A80000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1"
>

</TextView>

mijn Java:

package com.martinxsan.Gamedemo;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;


public class Weapons extends ListActivity /*ListActivity*/ {
/** Called when the activity is first created. */

TextView txt;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.main);
// Create a crude view - this should really be set via the layout resources
// but since its an example saves declaring them in the XML.
// LinearLayout rootLayout = new LinearLayout(getApplicationContext());
// txt = new TextView(getApplicationContext());
// rootLayout.addView(txt);
// setContentView(rootLayout);

// Set the text and call the connect function.
//txt.setText("Connecting...");
//call the method to run the data retreival
// txt.setText(getServerData());
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.weapon_row, getServerData());
setListAdapter(adapter);


}
public static final String KEY_121 = "http://10.0.2.2/hellomysql/mysqlcon.php"; //i use my real ip here


@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.layout.game_menu, menu);
return true;
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.start:
startActivity (new Intent (this, Gamedemo.class));
return true;
default:
return super.onOptionsItemSelected(item);
}
}


private String[] getServerData() {

InputStream is = null;
String[] test = new String[3];

String result = "";
//the year data to send
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("year","1970"));

//http post
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(KEY_121);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();

}catch(Exception e){
Log.e("log_tag", "Error in http connection "+e.toString());
}

//convert response to string
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){
Log.e("log_tag", "Error converting result "+e.toString());
}
//parse json data
try{
JSONArray jArray = new JSONArray(result);
//returnString = "";
test = new String[jArray.length()];
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
//Get an output to the screen
test[i] = jArray.getJSONObject(i).getString("name").toString();
}
}catch(JSONException e){
Log.e("log_tag", "Error parsing data "+e.toString());
}

return test; //returnString;
}

protected void onListItemClick(ListView l, View v, int position, long id) {




//choosing where i should go when clicked.

Class<?> cls = null;


if (position == 0) {
cls = com.martinxsan.Gamedemo.Caryestial.class;

}
else if (position == 1) {
cls = com.martinxsan.Gamedemo.Gurial.class;
}

Intent newIntent = new Intent();
newIntent
.setClass(
Weapons.this,
cls);
newIntent.putExtra("LandType", String.valueOf(position + 1));
Weapons.this.startActivity(newIntent);
}
};

dit werk wel maar in de XML staat nu alleen een listview en geen imageview.

ik moet daarom dit in de XML zetten:

XML code:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:typeface="serif"
android:textSize="16dp"
android:shadowColor="#A80000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1"
>

</TextView>

als ik deze wil toevoegen krijg ik deze error:

“This tag and its children can be replaced by one <textview/> and a compound drawable.”

als ik dan gewoon doorga en hem toch doorvoor dan loopt mijn app vast waar de database gegevens horen te komen.

heeft iemand dit wel eens eerder gehad ? zou iemand me dit kunnen vertellen.

Alvast bedankt.

Met vriendelijke groet,

Martin-san

Bewerkt (24 april 2013 14:02)
bartfukkink

bartfukkink

  • Lid sinds 11 februari 2011
  • Berichten 358
  • Reputatie 0
  • #2
  • 11 januari 2012
  • 08:30

Ik kan niet helemaal volgen wat je hier nou precies wil doen… Wil je in de Xml nu 2 keer dezelfde xml van het tekstvak plaatsen?

Bewerkt (24 april 2013 14:02)
Martin-San

Martin-San

  • Lid sinds 24 oktober 2011
  • Berichten 29
  • Reputatie 0
  • #3
  • 11 januari 2012
  • 20:51

nou kijk, in de XML die ik nu gebruik staat dit :

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:typeface="serif"
android:textSize="16dp"
android:shadowColor="#A80000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1"
>

</TextView>


en dit werkt wel gewoon. alleen ik wil graag een plaatje voor de tekst hebben staan.


dat heb ik al eens gedaan maar dan moet ik iets extra's invoegen in de XML.

namelijke dit :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent">

<ImageView
android:id="@+id/icon"
android:layout_width="35px"
android:layout_height="35px"
android:layout_marginLeft="4px"
android:layout_marginRight="10px"
android:layout_marginTop="5px"
android:src="@drawable/icon" >
</ImageView>

<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="32px"
android:shadowColor="#008000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1">
</TextView>

</LinearLayout>

maar als ik dit nu invoeg, dan krijg ik een error, namelijk deze:

“”This tag and its children can be replaced by one <textview/> and a compound drawable.“”

Bewerkt (24 april 2013 14:02)
Martin-San

Martin-San

  • Lid sinds 24 oktober 2011
  • Berichten 29
  • Reputatie 0
  • #4
  • 11 januari 2012
  • 21:45

Martin-San;257752
nou kijk, in de XML die ik nu gebruik staat dit :
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:typeface="serif"
android:textSize="16dp"
android:shadowColor="#A80000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1"
>

</TextView>


en dit werkt wel gewoon. alleen ik wil graag een plaatje voor de tekst hebben staan.


dat heb ik al eens gedaan maar dan moet ik iets extra's invoegen in de XML.

namelijke dit :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent">

<ImageView
android:id="@+id/icon"
android:layout_width="35px"
android:layout_height="35px"
android:layout_marginLeft="4px"
android:layout_marginRight="10px"
android:layout_marginTop="5px"
android:src="@drawable/icon" >
</ImageView>

<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="32px"
android:shadowColor="#008000"
android:shadowRadius="1.5"
android:shadowDx="1"
android:shadowDy="1">
</TextView>

</LinearLayout>

maar als ik dit nu invoeg, dan krijg ik een error, namelijk deze:

“”This tag and its children can be replaced by one <textview/> and a compound drawable.“”

Een andere app in mijn Eclipse heeft deze error nu ookal. mischien ligt het aan mijn mijn eclipse zal eens mailen.

Bewerkt (24 april 2013 14:02)
bartfukkink

bartfukkink

  • Lid sinds 11 februari 2011
  • Berichten 358
  • Reputatie 0
  • #5
  • 12 januari 2012
  • 08:46

Iets wat je kan proberen, en wat nogal is helpt, is het project Cleanen. Als je rechtsklikt op het project binnen eclipse staat er volgens mij ergens Clean. Dat kan je altijd nog is proberenVerder zegt de fout mij niets…

Bewerkt (24 april 2013 14:02)

Reageer

Om te reageren, dien je te zijn ingelogd. Druk op de onderstaande knop om in te loggen of maak een nieuwe account aan.

Inloggen Registreren