android public 简书,android分享2

public class Items {

private  int img_id;

private  String name;

public int getImg_id() {

return img_id;

}

public void setImg_id(int img_id) {

this.img_id = img_id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getExplain() {

return explain;

}

public void setExplain(String explain) {

this.explain = explain;

}

private  String explain;

}

二、

[if !supportLists]1. [endif]编写一个程序,可以显示实时时间,按返回时有弹出对话框提示是否退出程序,按确认后退出程序。

[if !supportLists]2. [endif]编写一个程序,按下按钮后间隔10秒自动弹出一个Toast显示当前时间,按返回时有弹出对话框提示是否退出程序,按确认后退出程序。

public class MainActivity extends Activity implements OnClickListener{

private AnalogClock clock;

private Button btn,btn2;

private DateFormat df;

public void onClick(View v) {

// TODO Auto-generated method stub

switch (v.getId()) {

case R.id.button1:

new AlertDialog.Builder(MainActivity.this)

.setTitle("退出提醒").setMessage("是否退出程序!")

.setNegativeButton("否", null)

.setPositiveButton("确定", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

finish();            }     }).show();break;

case R.id.button2:

Date curDate =  new Date(System.currentTimeMillis());

df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dfs =  df.format(curDate);

new AlertDialog.Builder(MainActivity.this)

.setTitle("时间").setMessage(dfs)

.setPositiveButton("返回", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

new AlertDialog.Builder(MainActivity.this)

.setTitle("退出提醒").setMessage("是否退出程序!")

.setNegativeButton("否", null)

.setPositiveButton("确定", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

finish();

}      }).show();  }   }).show(); break;

default:

break;}}

[if !supportLists]3. [endif]编写一个程序,实现一个登录界面,在登录界面中包含一个复选按钮“记住我”,选择时保存用户名和密码,否则不保存,打开登录界面时,如果有保存的用户名和密码,则将保存的用户名和密码显示到对应控件中。

public void onClick(View v) {

// TODO Auto-generated method stub

boolean chk = ck.isChecked();

if(chk){

namet.setText("用户名:"+String.valueOf(name.getText().toString()));

pwdt.setText("密码:"+String.valueOf(pwd.getText().toString()));

new AlertDialog.Builder(MainActivity.this)

.setMessage("登陆记住密码 ").setPositiveButton("确认 ", null).show();

}

else{

new AlertDialog.Builder(MainActivity.this)

.setMessage("登陆未记住密码").setPositiveButton("确认", null).show();}

[if !supportLists]4. [endif]编写一个程序,实现一个日记功能,将写好的日记保存到文件Diary中,点击浏览的时候查看日记内容。

public void onClick(View v) {

// TODO Auto-generated method stub

String neirong = et.getText().toString();

String dizi = "riji.text";

switch (v.getId()) {

case R.id.button1:

FileOutputStream out = null;

try {

out = context.openFileOutput(dizi, Context.MODE_PRIVATE);

out.write(neirong.getBytes("UTF-8"));

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally{

try {

out.close();

} catch (Exception e) {

e.printStackTrace();

}

}

break;

case R.id.button2:

FileInputStream in = null;

ByteArrayOutputStream bout = null;

byte[]buf = new byte[1024];

bout = new ByteArrayOutputStream();

int length = 0;

try {

in = context.openFileInput(dizi); //获得输入流

while((length=in.read(buf))!=-1){

bout.write(buf,0,length);

}

byte[] content = bout.toByteArray();

tv.setText(new String(content,"UTF-8")); //设置文本框为读取的内容

} catch (Exception e) {

e.printStackTrace();

}

tv.invalidate(); //刷新屏幕

try{

in.close();

bout.close();

}

catch(Exception e){}

break;

[if !supportLists]5. [endif]编写一个程序,实现图片的浏览,向左滑动显示下一张图片,向右滑动显示上一张图片。

package com.example.img;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.MotionEvent;

import android.view.View;

import android.view.View.OnTouchListener;

import android.widget.ImageView;

public class MainActivity extends Activity implements OnTouchListener{

int caozuo = 0;

float x1 = 0;

float x2 = 0;

public ImageView image;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

image = (ImageView)findViewById(R.id.imageView1);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

@Override

public boolean onTouch(View v, MotionEvent event) {

if(event.getAction() == MotionEvent.ACTION_DOWN)

x1 = event.getX();

if(event.getAction() == MotionEvent.ACTION_UP){

x2 = event.getX();

if(x1-x2>=5){

caozuo =caozuo+1;

caozuo = caozuo%8;

if(caozuo==0)

{

caozuo ++;

}

image.setImageResource(R.drawable.a_1+caozuo);

}

if(x2-x1>=5){

caozuo =caozuo-1;

if(caozuo<=0){

caozuo = 7;

}

image.setImageResource(R.drawable.a_1+caozuo);

}

}

return false;

}

}//注意要添加照片进入文件中

[if !supportLists]6. [endif]编写一个程序,通过Handler和Thread或Runnable实现以10秒时间显示完进度条进度。

private ProgressBar progress;

private int max = 100,current = 0,step = 0;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

progress = (ProgressBar)findViewById(R.id.progressBar3);

progress.setMax(max);

progress.setProgress(0);

step = max/10;

new Thread(new Runnable() {

int i =1;

@Override

public void run() {

// TODO Auto-generated method stub

try {

while (max!=progress.getProgress()) {

Log.i("次数", i + "");

i++;

progress.setProgress(current + step);

current = progress.getProgress();

Thread.sleep(1000);

}

} catch (Exception e) {

// TODO: handle exception

}}

}).start();

}

[if !supportLists]7. [endif]编写一个程序,通过AsyncTask实现以20秒时间显示完进度条进度。

package com.example.jindutiao20s;

import android.os.AsyncTask;

import android.os.Bundle;

.import android.app.Activity;.import android.view.Menu;

import android.widget.ProgressBar;

import android.widget.TextView;.

.public class MainActivity extends Activity {.

private ProgressBar myBar;

private TextView textView;

@Override

.    protected void onCreate(Bundle savedInstanceState) {

.        super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);

myBar = (ProgressBar)findViewById(R.id.progressBar1);

textView = (TextView)findViewById(R.id.textView1);

MyAsync my = new MyAsync();

my.execute();

}

class MyAsync extends AsyncTask{

int index = 0;

@Override

.    protected void onPreExecute() {

.    // TODO Auto-generated method stub

super.onPreExecute();

.    textView.setText("0%");

}

protected Integer doInBackground(Void... params) {.

try {

for(int i =0;i<=20;i++){

Thread.sleep(1000);

index ++;

publishProgress(index);

}

.} catch (Exception e) {

// TODO: handle exception

}

return null;

}

.@Override

.protected void onProgressUpdate(Integer... values) {

// TODO Auto-generated method stub

.super.onProgressUpdate(values);

.textView.setText(values[0]*5+"%");

.myBar.setProgress(index*5);

.}

.    @Override

.    protected void onPostExecute(Integer result) {

.    // TODO Auto-generated method stub

.    super.onPostExecute(result);

.    }

.

.

.    }

.

.

.    @Override.    public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;.    }

}

[if !supportLists]8. [endif]编写一个程序,手动绑定列表控件ListView,每条记录中包含图片,名称和描述。

两个布局布局1  listview布局二 对一个item进行布局 图片文字

三类主类调用该

package com.example.bangding;

import java.util.ArrayList;

import java.util.List;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.widget.ListView;

public class MainActivity extends Activity {

private List list;

private ListView listview;

private  MyAdapter adapter;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

list = new ArrayList();

listview = (ListView)findViewById(R.id.listView1);

init();

}

private void init()

{

for (int i =1;i<=10;i++)

{

Items items = new Items();

items.setImg_id(R.drawable.a_1+i);

items.setName("名字:" + i);

items.setExplain("解释: "+ i);

list.add(items);

adapter = new MyAdapter(MainActivity.this,list);

listview.setAdapter(adapter);

}

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}

Items类 声明

package com.example.bangding;

public class Items {

public int getImg_id() {

return img_id;

}

public void setImg_id(int img_id) {

this.img_id = img_id;

}

public String getExplain() {

return explain;

}

public void setExplain(String explain) {

this.explain = explain;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

private int img_id;

private String name;

private  String explain;

}

Myadapter进行布局    线程

package com.example.bangding;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.TextView;

import java.util.List;

public class MyAdapter extends BaseAdapter {

private List list ;

private LayoutInflater inflater;

public  MyAdapter(Context context,List list)

{

this.list = list;

inflater = LayoutInflater.from(context);

}

@Override

public int getCount() {

return list.size();

}

@Override

public Object getItem(int position) {

return list.get(position);

}

@Override

public long getItemId(int position) {

return position;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

View view;

ViewHolder holder;

if(convertView==null)

{

view = inflater.inflate(R.layout.myactivity,null);

holder = new ViewHolder(view);

view.setTag(holder);

}

else

{

view = convertView;

holder = (ViewHolder) view.getTag();

}

Items items =  list.get(position);

holder.img.setImageResource(items.getImg_id());

holder.name.setText(items.getName());

holder.explain.setText(items.getExplain());

return view;

}

class  ViewHolder

{

private ImageView img;

private TextView name;

private  TextView explain;

public ViewHolder(View view)

{

img = (ImageView)view.findViewById(R.id.imageView1);

name = (TextView)view.findViewById(R.id.textView1);

explain = (TextView)view.findViewById(R.id.textView2);

}

}

}

[if !supportLists]9. [endif]编写一个程序,通过使用Service来实现简单的播放器。

public class Myservice extends Service {

private MediaPlayer player;

private boolean ispaused = false;

private  int position =0;

@Override

public void onCreate() {//最一开始会执性这个方法 如果服务在启动之中就不会启动这个方法直接调用onStartCommand 方法

super.onCreate();

Log.i("TAG","开始播放");

player = MediaPlayer.create(this,R.raw.qiyueshang);}

public void onDestroy() {//停止服务

super.onDestroy();

if(player != null)

player.stop();    }

public  void Play(int pos)//播放

{

if(player!=null)       {

player.start();

Log.i("TAG","开始播放");

player.seekTo(pos);      }   }

public void Pause()//暂停

{

if(player != null && player.isPlaying())   {

position = player.getCurrentPosition();//获取播放位置

player.pause();//暂停音乐

ispaused = true;    }

else if(ispaused)   {

Play(position);   }  }

public  void Rest()//重放

{  if(player!=null)

Play(0);  }

@Override

public int onStartCommand(Intent intent, int flags, int startId) {//开始服务

int flag = intent.getIntExtra("MSG",0);

if(flag==1)

{Play(0);}

else if(flag==2)

{Pause();}

else if(flag==3)

{Rest();}

Log.i("MSG",flag+"");

return super.onStartCommand(intent, flags, startId);

}

public IBinder onBind(Intent intent) {

return null;

}

}

[if !supportLists]10. [endif]编写一个程序,实现在状态栏提示有新短消息,展开状态栏点击消息时弹出详细信息界面。

public class NotifaicationActivity extends AppCompatActivity  implements View.OnClickListener{

private  Notification notification;

private Button send_notifiaction,stop_notification;

private   NotificationManager manager;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

send_notifiaction = (Button)findViewById(R.id.send_notification);

stop_notification = (Button)findViewById(R.id.stop_notification);

send_notifiaction.setOnClickListener(this);

stop_notification.setOnClickListener(this);

//第一步首先获取Notification管理对象

manager   = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

//第二步获取Notification.Builder对象

Notification.Builder builder = new Notification.Builder(this);

//设置小图标

builder.setSmallIcon(R.mipmap.ic_launcher);

//提示音 振动 闪烁都是默认

builder.setDefaults(Notification.DEFAULT_ALL);

builder.setTicker("短信");

builder.setContentTitle("有短信");

builder.setContentText("短信来了");

Intent intent = new Intent(this,NotifaicationActivity.class);

//生成PendingIntene对象

PendingIntent pendingIntent = PendingIntent.getActivity(this,1,intent,0);

//设置跳转页面

builder.setContentIntent(pendingIntent);

//获得Notifaication对象

notification = builder.build();

}

@Override

public void onClick(View v) {

switch (v.getId())

{

case R.id.send_notification:

manager.notify(1,notification);//第一个时标识号 第二个是对象

break;

case R.id.stop_notification:

manager.cancel(1);

break;

}

}

}

[if !supportLists]11. [endif]编写一个程序,实现ListView显示好友列表信息,要求使用BaseAdapter。

public class MyAdapter extends BaseAdapter {

private List list ;

private LayoutInflater inflater;

public  MyAdapter(Context context,List list)

{

this.list = list;

inflater = LayoutInflater.from(context);

}

@Override

public int getCount() {

return list.size();

}

@Override

public Object getItem(int position) {

return list.get(position);

}

@Override

public long getItemId(int position) {

return position;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

View view;

ViewHolder holder;

if(convertView==null)

{

view = inflater.inflate(R.layout.item,null);

holder = new ViewHolder(view);

view.setTag(holder);

}

else

{

view = convertView;

holder = (ViewHolder) view.getTag();

}

Items items =  list.get(position);

holder.img.setImageResource(items.getImg_id());

holder.name.setText(items.getName());

holder.explain.setText(items.getExplain());

return view;

}

class  ViewHolder

{

private ImageView img;

private TextView name;

private  TextView explain;

public ViewHolder(View view)

{

img = (ImageView)view.findViewById(R.id.imageView);

name = (TextView)view.findViewById(R.id.name);

explain = (TextView)view.findViewById(R.id.explain);

}

}

}

[if !supportLists]12. [endif]编写一个程序,实现点击一个按钮,打开一个新的Activity并传递“hello”,在新的Activity,接收传递过来的“hello”,将“hello”改成“hello world”,结束当前Activity并将需要修改后的值返回并关闭当前窗体。

public class IntentFirstActivity extends AppCompatActivity {

private Button send;

private EditText edit;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_intent_first);

send = (Button)findViewById(R.id.send_message);

edit = (EditText)findViewById(R.id.input);

send.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent(IntentFirstActivity.this,IntentSecondActivity.class);

intent.putExtra("MSG",edit.getText().toString());

startActivityForResult(intent,2);

}

});

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

edit.setText(data.getStringExtra("MSG"));

Toast.makeText(this,"收到新的值了",Toast.LENGTH_SHORT).show();

}

}

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_intent_second);

send = (Button)findViewById(R.id.transition_msg);

Msg = (EditText)findViewById(R.id.return_msg);

receive_msg = (TextView)findViewById(R.id.receive);

receive_msg.setText("收到的信息为:" + getIntent().getStringExtra("MSG"));

send.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent();

intent.putExtra("MSG",Msg.getText().toString());

//将修改的结果返回给上一个intent

setResult(1,intent);

finish();

}

});

}

}

三、

1.实现个人通讯录管理,主界面中包含添加按钮和ListView,能实现通讯录的添加和管理;所有通讯录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

呼叫、编辑联系人、删除联系人,分别实现这几个功能。

2.实现个人通讯录管理,主界面中包含添加按钮和ListView,能实现通讯录的添加和管理;所有通讯录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、浏览联系人、删除联系人,分别实现这几个功能。

3.实现个人备忘录管理,主界面中包含添加按钮和ListView,能实现对备忘录的添加和管理;所有备忘录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、编辑、删除,分别实现这几个功能。

4.实现个人备忘录管理,主界面中包含添加按钮和ListView,能实现对备忘录的添加和管理;所有备忘录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、浏览、删除,分别实现这几个功能。

5.实现学生管理,登录界面,实现用户的登录,登录成功后,显示添加学生信息界面,学生信息包括学号、姓名、学院、专业和性别,输入完成后点击添加按钮添加到数据库中。要求:选择学院时专业发生相应的变化,性别采用单选按钮。

6.实现收货管理,包括以下功能:

1)用户登录功能;

2)货物管理功能,长按某条记录进行编辑和删除,或点击全部删除,清空所有收到的货物列表;

3)收货功能,货物信息:货物名称、件数、运费、目的地、收货人、电话等信息。

7.实现挂号预约系统,包括以下功能:

1)挂号预约,包括姓名、性别、年龄、地址、所挂科室等;

2)挂号预约管理,使用ListView实现,可删除或重新预约。

8.个人理财系统,包括以下功能:

1)支出录入:日期、金额、项目

2)收入录入:日期、金额、项目

3)支出收入列表,查询一个时间段的收入或支出情况并汇总。

9.日记系统,包括以下功能:

1)写日记,包括日期、天气、标题、内容等;

2)日记列表,根据条件查询日记,能实现对日记信息的显示,点击一条日记信息,显示日记详细内容,长按每条记录,能弹出对日记信息的修改、删除。

10.作业系统,包括以下功能:

1)记录作业,包括日期、作业类型(语文或数学等)、作业内容

2)显示作业列表,点击某项作业,转到作业详细信息界面,在该界面,可设置作业已完成、未做、不会等标识。

11.考勤系统,包括以下功能:

1)记录考勤,包括日期,年级,班级,总人数,旷课人数,请假人数;

2)记录旷课人具体信息,包括日期,年级,班级,旷课人姓名

3)显示考勤列表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值