android listview와 android Text비교하는 질문 드립니다.
조회수 744회
제가 Wi-Fi SSID, BSSID, RSSI를 불러오는 앱을 만들고있는데
SSID, BSSID, RSSI를 불러와서 리스트뷰에 띄워주는거 까지는 성공을 하였습니다.
그러나 같은 SSID를 하나로 묶어서 리스트를 터치했을때 목록이 생기면서 해당 SSID의 BSSID와 RSSI를 보여주도록 해야합니다.
제가 현재 막힌 부분은 SSID의 Text를 비교하는 부분에서 어려움을 겪고있고,
ListView에서 항목을 터치했을때 해당 리스트의 항목을 보이도록 하는 부분에서 어려움을 겪고있습니다.
알려주시면 감사하겠습니다.!!
아래부분은 Item_layout부분입니다.
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="8"
android:orientation="vertical">
<TextView
android:id="@+id/tvSSID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SSID"
android:textColor="#000000"
android:textSize="20dp" />
<TextView
android:id="@+id/tvBSSID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="BSSID"
android:textColor="#000000"
android:textSize="15dp" />
<TextView
android:id="@+id/tvRSSI"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RSSI"
android:textColor="#000000"
android:textSize="15dp" />
</LinearLayout>
아래 부분은 MainActivity부분 입니다.
SSID비교 라고 해놓은 부분에서 방법을 찾고있습니다.
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action.equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {
scanDatas = wifiManager.getScanResults();
//SSID비교
for (int i =0; i <= 30; i++){
String str1 = scanDatas.get(i).SSID;
String str2 = scanDatas.get(i).SSID;
Log.d("Darin", String.valueOf(str1.equals(str2)));
}
// 어댑터뷰(리스트 뷰)
listView = (ListView) findViewById(R.id.listView);
// 어댑터
ArrayAdapter adapter = new WifiAdapter(getApplicationContext(), R.layout.item_layout, scanDatas);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(getApplicationContext(), scanDatas.get(i).SSID, Toast.LENGTH_SHORT).show();
}
});
// listview 갱신
adapter.notifyDataSetChanged();
} else if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
sendBroadcast(new Intent("wifi.ON_NETWORK_STATE_CHANGED"));
}
}
};
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력