package com.clj.blesample.tool;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.clj.blesample.R;
import com.clj.blesample.tool.other.UserActivity;
import com.clj.blesample.tool.scan.AnyScanActivity;
import com.clj.blesample.tool.scan.MacScanActivity;
import com.clj.blesample.tool.scan.NameFuzzyScanActivity;
import com.clj.blesample.tool.scan.NameScanActivity;
import com.clj.blesample.tool.scan.NamesFuzzyScanActivity;
import com.clj.blesample.tool.scan.NamesScanActivity;
/**
* 可以作为测试工具
*/
public class MainActivity extends AppCompatActivity {
private String[] modes = new String[]{
"扫描所有设备,并显示",
"扫描指定广播名的设备,并连接(唯一广播名)",
"扫描指定广播名的设备,并连接(模糊广播名)",
"扫描指定广播名的设备,并连接(多个广播名)",
"扫描指定广播名的设备,并连接(模糊、多个广播名)",
"扫描指定物理地址的设备,并连接"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
findViewById(R.id.txt_user).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this, UserActivity.class));
}
});
ListView mListView = (ListView) findViewById(R.id.list);
mListView.setAdapter(new ConnectModeAdapter(this, modes));
mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
startActivity(new Intent(MainActivity.this, AnyScanActivity.class));
break;
case 1:
startActivity(new Intent(MainActivity.this, NameScanActivity.class));
break;
case 2:
startActivity(new Intent(MainActivity.this, NameFuzzyScanActivity.class));
break;
case 3:
startActivity(new Intent(MainActivity.this, NamesScanActivity.class));
break;
case 4:
startActivity(new Intent(MainActivity.this, NamesFuzzyScanActivity.class));
break;
case 5:
startActivity(new Intent(MainActivity.this, MacScanActivity.class));
break;
}
}
});
}
private class ConnectModeAdapter extends BaseAdapter {
private Context context;
private String[] modes;
ConnectModeAdapter(Context context, String[] modes) {
this.context = context;
this.modes = modes;
}
@Override
public int getCount() {
if (modes == null)
return 0;
return modes.length;
}
@Override
public String getItem(int position) {
if (modes == null)
return null;
return modes[position];
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView != null) {
holder = (ViewHolder) convertView.getTag();
} else {
convertView = View.inflate(context, R.layout.adapter_connect_mode, null);
holder = new ViewHolder();
convertView.setTag(holder);
holder.txt_mode = (TextView) convertView.findViewById(R.id.txt_mode);
}
holder.txt_mode.setText(modes[position]);
return convertView;
}
class ViewHolder {
TextView txt_mode;
}
}
}