Android-编辑需求demo实现
16lz
2021-01-26
看了几集Android视频,没什么感觉,做完demo后大概了解了Android中一个功能实现的逻辑流程,Android主要做的是前台,在手机上显示效果。后台的接口方法都是写好的,相当于别人发布的服务,通过访问他们的URL读取数据来显示。
首先建立Androidproject,然后建包的格式:bean(主要放公共URL和实体java)、ui包中放activity对象,res下的layout中放各个xml页面,最后Mainfest.xml配置一下通信权限,如果里面有多个activity,要设置访问首页。
Activity.java:
package com.example.shizhan.ui;import com.alibaba.fastjson.JSON;import com.android.volley.RequestQueue;import com.android.volley.Response;import com.android.volley.VolleyError;import com.android.volley.Request.Method;import com.android.volley.toolbox.StringRequest;import com.android.volley.toolbox.Volley;import com.example.shizhan.R;import com.example.shizhan.bean.DemandInfoVo;import com.example.shizhan.bean.DemandinfoEntity;import com.example.shizhan.bean.URL;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Toast;public class EditxuqiuActivity extends Activity implements OnClickListener {private TextView txtxuqiuzhuti;private TextView txtcoursetype;private TextView txtshangkedidian;private TextView txtshangkeshijian;private TextView txtyusuan;private TextView txtmiaoshu;private TextView txtname;private TextView txtlianxifangshi;private TextView txtguoqishijian;private LinearLayout linertehme;private RequestQueue mQueue;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.activity_editxuqiu);mQueue = Volley.newRequestQueue(EditxuqiuActivity.this);initView();GetOrderData();} //绑定控件public void initView() {txtxuqiuzhuti = (TextView) findViewById(R.id.editxuqiu_xuqiuzhutiid);txtcoursetype = (TextView) findViewById(R.id.editxuqiu_personid);txtshangkedidian = (TextView) findViewById(R.id.editxuqiu_shangkedidianid);txtshangkeshijian = (TextView) findViewById(R.id.editxuqiu_shangkeshijianid);txtyusuan = (TextView) findViewById(R.id.editxuqiu_yusuanid);txtmiaoshu = (TextView) findViewById(R.id.editxuqiu_miaoshuid);txtname = (TextView) findViewById(R.id.editxuqiu_nameid);txtlianxifangshi = (TextView) findViewById(R.id.editxuqiu_lianxifangshiid);txtguoqishijian = (TextView) findViewById(R.id.editxuqiu_guoqishijianid);linertehme = (LinearLayout) findViewById(R.id.editxuqiu_linear);linertehme.setOnClickListener(this);}//网络请求,读数据库public void GetOrderData() {String urlString = URL.EDITXUQIU_URL;StringRequest stringRequest = new StringRequest(Method.GET, urlString,new Response.Listener<String>() {@Overridepublic void onResponse(String response) {DemandInfoVo demandInfoVo = null;// json 转换为实体demandInfoVo = JSON.parseObject(response.toString(),DemandInfoVo.class);DemandinfoEntity demandinfoEntity = demandInfoVo.getDemandInfo();setData(demandinfoEntity);}}, new Response.ErrorListener() {@Overridepublic void onErrorResponse(VolleyError error) {Toast.makeText(getBaseContext(), "请求失败?",Toast.LENGTH_LONG).show();}});mQueue.add(stringRequest);}//查询出来数据给页面控件赋值public void setData(DemandinfoEntity demandinfoEntity) {txtxuqiuzhuti.setText(demandinfoEntity.getDemandITheme());txtcoursetype.setText(demandinfoEntity.getCourseType());txtshangkedidian.setText(demandinfoEntity.getPlace());txtshangkeshijian.setText(demandinfoEntity.getOpenTime());txtyusuan.setText(demandinfoEntity.getBudget());txtmiaoshu.setText(demandinfoEntity.getMoreDescribe());txtname.setText(demandinfoEntity.getContactWay());txtlianxifangshi.setText(demandinfoEntity.getContacts());txtguoqishijian.setText(demandinfoEntity.getOverdueDate());}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.editxuqiu_linear:Intent intent = new Intent();intent.setClass(EditxuqiuActivity.this, MessageActivity.class);startActivity(intent);break;default:break;}}}URL.java:
package com.example.shizhan.bean;public class URL {private static String urlPrefix = "http://120.25.249.94/jrkj/GetJrkjData.ashx?op=";/** * 注册 */public final static String REGISTER_URL = urlPrefix + "RegistUser";/** * 编辑需求URL */public final static String EDITXUQIU_URL = urlPrefix + "queryOneDemandInfo";/** * 消息URL */public final static String MESSAGE_URL = urlPrefix + "queryMessageRelationData";}Mainfest.xml:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.shizhan" android:versionCode="1" android:versionName="1.0" > <!-- 设置通信权限 --> <uses-permission android:name="android.permission.INTERNET" /> <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="21" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.Light.NoTitleBar" > <activity android:name="com.example.shizhan.MainActivity" android:label="@string/app_name" > <!-- <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> --> </activity> <!-- 注册 --> <activity android:name="com.example.shizhan.ui.RegesiterActivity" android:label="@string/app_name" > <!-- 设置启动开启页面 --> </activity> <!-- 编辑需求界面 --> <activity android:name="com.example.shizhan.ui.EditxuqiuActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- 消息界面 --> <activity android:name="com.example.shizhan.ui.MessageActivity" android:label="@string/app_name" > <!-- <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> --> </activity> </application></manifest>多多动下你的手指,神奇一直都在发生着!
更多相关文章
- Android自动化编译设置AndroidManifest.xml中package值(包名)
- Android(安卓)监听键盘弹出关闭
- android 数据备份
- [Android]解决3gwap联网失败:联网请求在设置代理与直连两种方式的
- Android压力测试利器---Monkey
- Android(安卓)SQLite批量插入数据速度解决方案
- Android(安卓)三种动画详解
- .Net 转战 Android(安卓)4.4 日常笔记(9)--常用组件的使用方法[附
- Android(安卓)手机玩转技巧