내 listview에서 원하는 항목이 배열 항목 [0]을 표시하고 배열 항목을 표시하는 일부 데이터와 함께 wi-fi 목록을 가져옵니다. [2] 사용자 지정 어댑터 및 소비 목록보기를 사용하지 않고 하위 항목으로사용자 정의 어댑터를 사용하지 않고 목록보기에 하위 항목을 추가하는 방법
여기는 목록보기에 데이터를 추가하는 코드입니다.
import java.util.List;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ExpandableListView;
import android.widget.ListView;
public class MainActivity extends Activity {
WifiManager mainWifiObj;
WifiScanReceiver wifiReciever;
ExpandableListView list;
String wifis[];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
list = (ExpandableListView)findViewById(R.id.ListView1);
mainWifiObj = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifiReciever = new WifiScanReceiver();
mainWifiObj.startScan();
}
protected void onPause() {
unregisterReceiver(wifiReciever);
super.onPause();
}
protected void onResume() {
registerReceiver(wifiReciever, new IntentFilter(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
super.onResume();
}
class WifiScanReceiver extends BroadcastReceiver {
@SuppressLint("UseValueOf")
public void onReceive(Context c, Intent intent) {
List<ScanResult> wifiScanList = mainWifiObj.getScanResults();
wifis = new String[wifiScanList.size()];
for(int i = 0; i < wifiScanList.size(); i++){
wifis[i] = ((wifiScanList.get(i)).toString());
}
String filtered[] = new String[wifiScanList.size()];
int counter = 0;
for (String eachWifi : wifis) {
String[] temp = eachWifi.split(",");
filtered[counter] = temp[0].substring(5).trim()+"\n" + temp[2].substring(12).trim()+"\n" +temp[3].substring(6).trim();//0->SSID, 2->Key Management 3-> Strength
counter++;
}
list.setAdapter(new ArrayAdapter<String>(getApplicationContext(),
android.R.layout.simple_list_item_1, filtered));
}
}
}
왜 사용자 정의 어댑터를 사용하지 않으려는? 게으름? – Metehan
나는 이것이 가능하다고 생각하지 않는다. –
@Metehan 그러면 사용자 정의 어댑터를 사용하여 달성하는 방법을 알려주십시오. bacuase 나는 이것에 대해 커스텀 어댑터를 사용하여 많은 것을 검색했다.하지만 그들은 모두 이해하기가 어렵다. – user3853169