Hallo zusammen.. da bin ich wieder
hab ein kleines Problem mit meinem Code...So weit läuft es ja. Ich kann
die SSID und BSSID anzeigen aber,wenn ich einen int-Wert, wie bspw. level auslesen
möchte, klappt das nicht. Da stürzt meine App immer ab. Beim String klappt das ohne Prob.
Hoffe jemand kann mir da helfen
Danke schon mal!!
Habe den Konstruktor angepaßt usw.
Hier der Teilcode in der Main
[code]class CustomBroadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
wifiManager.startScan();
listCustomData = new ArrayList<CustomData>();
for( int x = 0; x < wifiManager.getScanResults().size(); x++ ) {
// listCustomData.add(new CustomData(wifiManager.getScanResults().get( x ).SSID, wifiManager.getScanResults().get( x ).BSSID));
listCustomData.add(new CustomData(wifiManager.getScanResults().get( x ).level));
}
CustomArrayAdapter arrayAdapter = new CustomArrayAdapter(getApplicationContext(), R.layout.custom_listview, listCustomData);
listView.setAdapter(arrayAdapter);
Toast.makeText(MainActivity.this, "Scan...", Toast.LENGTH_SHORT).show();
}
}[/code]
Hier der Code in der CustomData
[code]public class CustomData {
String textSSID;
String bssid;
int levelInt;
public CustomData( String ssid, String bssid) {
this.textSSID = ssid;
this.bssid = bssid;
}
public CustomData( int levelint ) {
this.levelInt = levelint;
}
public String getSSID() {
return textSSID;
}
public String getBSSID() {
return bssid;
}
public int getLevelInt() {
return levelInt;
}
}[/code]
Und der Letzte in der Adapter Klasse
[code]public View getView(int position, View convertView, ViewGroup parent ) {
LayoutInflater layoutInflater = ( LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = convertView;
// String textSSID = getItem(position).getSSID();
// String bssidString = getItem( position ).getBSSID();
int levelIntID = getItem( position ).getLevelInt();
if( convertView == null ) {
view = layoutInflater.inflate( R.layout.custom_listview, null );
// TextView ssidNameFromID = ( TextView ) view.findViewById( R.id.textViewSSID );
// TextView bssidFromID = ( TextView ) view.findViewById( R.id.textViewIpAdress_ID );
TextView levelIntFromID = ( TextView ) view.findViewById( R.id.textViewIpAdress_ID );
CustomData cd = customData.get( position );
// ssidNameFromID.setText(textSSID);
// bssidFromID.setText(bssidString);
levelIntFromID.setText(levelIntID);
ImageView wifi = (ImageView) view.findViewById( R.id.imageViewWifiNet_ID );
wifi.setImageResource(R.drawable.wifi_net);//Es wird immer das gleiche Bild angezeigt
}
return view;
}[/code]