import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
import liyuanqi.bwie.com.di2zhoukaolx.activity.DataActivity;
import liyuanqi.bwie.com.di2zhoukaolx.model.JsonBeanDengLu;
import liyuanqi.bwie.com.di2zhoukaolx.parsenter.ActivityPrasenter;
public class MainActivity extends AppCompatActivity implements View.OnClickListener, ActivityPrasenter.DengluData {
SharedPreferences mSharedPreferences;
private EditText username;
private EditText password;
private Button login;
CheckBox jizhu;
CheckBox zidong;
SharedPreferences.Editor edit;
private ActivityPrasenter mActivityPrasenter;
private String mZhanghao;
private String mMama;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
mActivityPrasenter.Denglu();
DeangPanduan();
checkboxischeck();
}
private void DeangPanduan() {
boolean zidongs = mSharedPreferences.getBoolean("zidongs", false);
boolean jizhus = mSharedPreferences.getBoolean("jizhus", false);
mZhanghao = mSharedPreferences.getString("zhanghao", "");
mMama = mSharedPreferences.getString("mima", "");
if (zidongs){
Intent intent=new Intent(MainActivity.this, DataActivity.class);
startActivity(intent);
}
if (jizhus){
jizhu.setChecked(true);
username.setText(mZhanghao);
password.setText(mMama);
}
}
private void checkboxischeck() {
zidong.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (zidong.isChecked()){
jizhu.setChecked(true);
edit.putBoolean("zidongs",true);
edit.putBoolean("jizhus",true);
edit.commit();
}
}
});
jizhu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (jizhu.isChecked()){
edit.putBoolean("jizhus",true);
edit.commit();
}else {
zidong.setChecked(false);
edit.putBoolean("jizhus",false);
edit.putBoolean("zidongs",false);
edit.commit();
}
}
});
}
private void initView() {
username = (EditText) findViewById(R.id.username);
password = (EditText) findViewById(R.id.password);
jizhu = (CheckBox) findViewById(R.id.jizhu);
zidong = (CheckBox) findViewById(R.id.zhidong);
login = (Button) findViewById(R.id.login);
mSharedPreferences = getSharedPreferences("lyq", MODE_PRIVATE);
edit = mSharedPreferences.edit();
mActivityPrasenter = new ActivityPrasenter(this);
login.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.login:
submit();
break;
}
}
private void submit() {
// validate
String usernameString = username.getText().toString().trim();
String passwordString = password.getText().toString().trim();
if (isnull(usernameString,passwordString)){
if (mZhanghao.equals(usernameString)&&mMama.equals(passwordString)){
Intent intent=new Intent(MainActivity.this, DataActivity.class);
startActivity(intent);
Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(MainActivity.this,"账号或密码错误",Toast.LENGTH_SHORT).show();
}
}
}
public boolean isnull(String usernameString, String passwordString){
if (TextUtils.isEmpty(usernameString)) {
Toast.makeText(this, "usernameString不能为空", Toast.LENGTH_SHORT).show();
return false;
}
if (TextUtils.isEmpty(passwordString)) {
Toast.makeText(this, "passwordString不能为空", Toast.LENGTH_SHORT).show();
return false;
}
return true;
}
@Override
public void cg(JsonBeanDengLu.DataBean resultBeans) {
edit.putString("zhanghao",resultBeans.getName());
edit.putString("mima", String.valueOf(resultBeans.getMobile()));
edit.commit();
Log.e("lyq",resultBeans.getName()+",,"+resultBeans.getId()+",,"+resultBeans.getMobile());
}
@Override
public void sb() {
Toast.makeText(MainActivity.this,"数据请求失败",Toast.LENGTH_SHORT).show();
}
@Override
protected void onDestroy() {
super.onDestroy();
mActivityPrasenter=null;
}
}
登录成功的页面
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import liyuanqi.bwie.com.di2zhoukaolx.R;
import liyuanqi.bwie.com.di2zhoukaolx.fragment.FragmentData;
import liyuanqi.bwie.com.di2zhoukaolx.fragment.FragmentMingPian;
public class DataActivity extends FragmentActivity{
private RadioButton btn1;
private RadioButton btn2;
private RadioGroup groups;
FragmentManager supportFragmentManager;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.towactivity);
initView();
initgroup();
supportFragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = supportFragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.frams,new FragmentData());
fragmentTransaction.commit();
}
private void initgroup() {
groups.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.btn1:
FragmentTransaction fragmentTransaction1= supportFragmentManager.beginTransaction();
fragmentTransaction1.replace(R.id.frams,new FragmentData());
fragmentTransaction1.commit();
break;
case R.id.btn2:
FragmentTransaction fragmentTransaction2= supportFragmentManager.beginTransaction();
fragmentTransaction2.replace(R.id.frams,new FragmentMingPian());
fragmentTransaction2.commit();
break;
}
}
});
}
private void initView() {
btn1 = (RadioButton) findViewById(R.id.btn1);
btn2 = (RadioButton) findViewById(R.id.btn2);
groups = (RadioGroup) findViewById(R.id.groups);
}
}
listview展示的:V层
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.Toast;
import java.util.List;
import liyuanqi.bwie.com.di2zhoukaolx.R;
import liyuanqi.bwie.com.di2zhoukaolx.model.DataAdapter;
import liyuanqi.bwie.com.di2zhoukaolx.model.JsonBeanData;
import liyuanqi.bwie.com.di2zhoukaolx.parsenter.DataPrasenter;
public class FragmentData extends Fragment implements DataPrasenter.Data {
private ListView lsv;
DataAdapter dataAdapter;
DataPrasenter dataPrasenter;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = View.inflate(getActivity(), R.layout.datafragment, null);
lsv = (ListView) view.findViewById(R.id.lsv);
dataAdapter = new DataAdapter(getActivity());
dataPrasenter = new DataPrasenter(this);
dataPrasenter.shujuhuoqu();
lsv.setAdapter(dataAdapter);
return view;
}
@Override
public void cg(List<JsonBeanData.DataBean> list) {
dataAdapter.datalist(list);
}
@Override
public void sb() {
Toast.makeText(getActivity(),"数据获取失败",Toast.LENGTH_SHORT).show();
}
}
listview展示的:P层
import android.os.AsyncTask;
import java.util.List;
import liyuanqi.bwie.com.di2zhoukaolx.model.HttpUrlData;
import liyuanqi.bwie.com.di2zhoukaolx.model.JsonBeanData;
public class DataPrasenter {
public DataPrasenter(Data data) {
mData = data;
}
public void shujuhuoqu() {
String wz="http://www.xieast.com/api/news/news.php?type=top&page=1&tdsourcetag=s_pcqq_aiomsg";
new AsyncTask<String, Void, List<JsonBeanData.DataBean>>() {
@Override
protected List<JsonBeanData.DataBean> doInBackground(String... strings) {
return HttpUrlData.pdjieguo(strings[0]);
}
@Override
protected void onPostExecute(List<JsonBeanData.DataBean> resultBeans) {
super.onPostExecute(resultBeans);
if (resultBeans==null){
mData.sb();
return;
}
mData.cg(resultBeans);
}
}.execute(wz);
}
/* */
public interface Data{
void cg(List<JsonBeanData.DataBean> list);
void sb();
}
private Data mData;
}
listview展示的:M层
import com.google.gson.Gson;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;
public class HttpUrlData {
static JsonBeanData jsonBean;
public static List<JsonBeanData.DataBean> pdjieguo(String string) {
try { URL url = new URL(string);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setReadTimeout(5000);
urlConnection.setConnectTimeout(5000);
int code = urlConnection.getResponseCode();
if (code==200){
String jsonString=httpstring(urlConnection.getInputStream());
jsonBean = new Gson().fromJson(jsonString, JsonBeanData.class);
}
return jsonBean==null?null:jsonBean.getData();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
private static String httpstring(InputStream inputStream) {
StringBuilder builder = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
try {
for (String temp=reader.readLine();temp!=null;temp=reader.readLine()){
builder.append(temp);
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return builder.toString();
}
}
生成二维码的代码
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import com.google.zxing.WriterException;
import com.yzq.zxinglibrary.encode.CodeCreator;
import liyuanqi.bwie.com.di2zhoukaolx.MainActivity;
import liyuanqi.bwie.com.di2zhoukaolx.R;
public class FragmentMingPian extends Fragment {
private ImageView img;
SharedPreferences mSharedPreferences;
private Button mTui;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = View.inflate(getActivity(), R.layout.mingpianfram, null);
initView(view);
mSharedPreferences=getActivity().getSharedPreferences("lyq", Context.MODE_PRIVATE);
String zhanghao = mSharedPreferences.getString("zhanghao", "");
try {
Bitmap bitmap= CodeCreator.createQRCode(zhanghao,400,400,null);
img.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
mTui.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(getActivity(), MainActivity.class);
startActivity(intent);
onDestroy();
}
});
return view;
}
private void initView(View view) {
mTui = view.findViewById(R.id.tchu);
img = (ImageView) view.findViewById(R.id.img);
}
}