If you think the Android project android_opengles listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code
package com.example.android.wifidirect.discovery;
//www.java2s.comimport android.app.ListFragment;
import android.content.Context;
import android.net.wifi.p2p.WifiP2pDevice;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
/**
* A simple ListFragment that shows the available services as published by the
* peers
*/publicclass WiFiDirectServicesList extends ListFragment {
WiFiDevicesAdapter listAdapter = null;
interface DeviceClickListener {
publicvoid connectP2p(WiFiP2pService wifiP2pService);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.devices_list, container, false);
}
@Override
publicvoid onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
listAdapter = new WiFiDevicesAdapter(this.getActivity(),
android.R.layout.simple_list_item_2, android.R.id.text1,
new ArrayList<WiFiP2pService>());
setListAdapter(listAdapter);
}
@Override
publicvoid onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
((DeviceClickListener) getActivity()).connectP2p((WiFiP2pService) l
.getItemAtPosition(position));
((TextView) v.findViewById(android.R.id.text2)).setText("Connecting");
}
publicclass WiFiDevicesAdapter extends ArrayAdapter<WiFiP2pService> {
private List<WiFiP2pService> items;
public WiFiDevicesAdapter(Context context, int resource,
int textViewResourceId, List<WiFiP2pService> items) {
super(context, resource, textViewResourceId, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getActivity()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(android.R.layout.simple_list_item_2, null);
}
WiFiP2pService service = items.get(position);
if (service != null) {
TextView nameText = (TextView) v
.findViewById(android.R.id.text1);
if (nameText != null) {
nameText.setText(service.device.deviceName + " - " + service.instanceName);
}
TextView statusText = (TextView) v
.findViewById(android.R.id.text2);
statusText.setText(getDeviceStatus(service.device.status));
}
return v;
}
}
publicstatic String getDeviceStatus(int statusCode) {
switch (statusCode) {
case WifiP2pDevice.CONNECTED:
return"Connected";
case WifiP2pDevice.INVITED:
return"Invited";
case WifiP2pDevice.FAILED:
return"Failed";
case WifiP2pDevice.AVAILABLE:
return"Available";
case WifiP2pDevice.UNAVAILABLE:
return"Unavailable";
default:
return"Unknown";
}
}
}