.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.hanqi.application3.UIActivity7" android:orientation="vertical"> <AutoCompleteTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="自动完成文本编辑框" android:id="@+id/actv_1" android:completionThreshold="1"/> <!--completionThreshold 提示所需要的字符--> <Spinner android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/sp_1"> </Spinner> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="状态栏提示" android:onClick="notification_onClick"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/da2" android:id="@+id/iv_3"/> </LinearLayout>
.java
package com.hanqi.application3; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.ImageView; import android.widget.Spinner; import android.widget.Toast; import java.util.Timer; import java.util.TimerTask; public class UIActivity7 extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ui7); AutoCompleteTextView actv_1 = (AutoCompleteTextView)findViewById(R.id.actv_1); //设置自动完成的数据源 String[] strings = {"China","Child","Chile","Chinese","Add","All","Class","Ddp"}; ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,R.layout.layout_array,strings); actv_1.setAdapter(arrayAdapter); //下拉列表 String[] strings1 = {"China","Child","Chile","Chinese","Add","All","Class","Ddp"}; ArrayAdapter<String> arrayAdapter1 = new ArrayAdapter<String>(this,R.layout.layout_array,strings1); Spinner sp1= (Spinner)findViewById(R.id.sp_1); sp1.setAdapter(arrayAdapter1); sp1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(UIActivity7.this, "position ="+position, Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { Toast.makeText(UIActivity7.this, "什么也没选", Toast.LENGTH_SHORT).show(); } }); //handler final ImageView iv3 = (ImageView)findViewById(R.id.iv_3); final int[] iImageid = {R.drawable.da1,R.drawable.da2,R.drawable.da3,R.drawable.da4}; //继承Handler final Handler handler = new Handler() { int i = 0; //处理消息的回调方法 //重写 @Override public void handleMessage(Message msg) { super.handleMessage(msg); //判断消息的类别 if(msg.what ==1) { //切换图片 iv3.setImageResource(iImageid[i++ % iImageid.length]); // i++; // if(i==10) // { // i=0; // } } } }; //在新线程发送消息 //定式循环发送 //定时器:启动新线程,定时执行代码 new Timer().schedule(new TimerTask() { @Override public void run() { //发送消息 //空消息 handler.sendEmptyMessage(1); } },1000,2000); } public void notification_onClick(View v) { //1.获取状态栏消息管理器 NotificationManager nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE); //3.构建意图 Intent intent = new Intent(this,UIActivity2.class); //4.获取PendingIntent PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,0); //2.构建消息 方法链调用 Notification nt = new Notification.Builder(this) .setContentTitle("这是一个通知") .setContentText("这是通知内容:点击打开新的界面 ") .setTicker("新通知") .setSmallIcon(R.drawable.da1)//图片 .setAutoCancel(true) .setDefaults(Notification.DEFAULT_ALL)//声音 .setContentIntent(pendingIntent) .build(); //交给管理器,发出消息 nm.notify(0,nt); } }
时间: 2024-10-27 04:46:27