標籤:
<?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" android:orientation="vertical" tools:context="com.hanqi.test5.UIActivity2"> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="長按觸發操作功能表" android:id="@+id/bt_changan"/> <ProgressBar android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/pb_1"/> <ProgressBar android:layout_width="match_parent" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:max="100" android:progress="50" android:secondaryProgress="70" android:id="@+id/pb_2" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/vipflower" android:id="@+id/iv_vip"/> <SeekBar android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:progress="100" android:id="@+id/sb_1"/><!--可拖動--> </LinearLayout>
package com.hanqi.test5;import android.app.Activity;import android.os.Bundle;import android.view.ContextMenu;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.view.SubMenu;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.ProgressBar;import android.widget.SeekBar;import android.widget.Toast;public class UIActivity2 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ui2); Button bt_changan = (Button)findViewById(R.id.bt_changan); bt_changan.setOnCreateContextMenuListener(this);/*this代表當前Activity,實現了這個介面*/ //進度條 //有final時,生命週期長,不加final的話就只是當前方法的,加final可以延長生命週期,或者定義成員變數 final ProgressBar pb_1 =(ProgressBar)findViewById(R.id.pb_1); final ProgressBar pb_2 =(ProgressBar)findViewById(R.id.pb_2); final SeekBar sb_1 =(SeekBar)findViewById(R.id.sb_1); sb_1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { //onProgressChanged進度條變化,進度改變就會觸發 @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { //pb_2.setProgress(seekBar.getProgress()); ImageView iv_vip = (ImageView)findViewById(R.id.iv_vip); //iv_vip.setAlpha(0.2f);透明度值是0-255 iv_vip.setImageAlpha(progress * 255 /100); } //onStartTrackingTouch開始拖動 @Override public void onStartTrackingTouch(SeekBar seekBar) { } //onStopTrackingTouch停止拖動 @Override public void onStopTrackingTouch(SeekBar seekBar) { pb_2.setProgress(seekBar.getProgress()); if (seekBar.getProgress() == seekBar.getMax()) { //設定不可見 pb_1.setVisibility(View.GONE); /*INVISIBLE不可見(占空間) VISIBLE可見 GONE不可見(不佔空間)*/ } else { pb_1.setVisibility(View.VISIBLE); } } }); } @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { menu.add(0,1,0,"添加"); menu.add(0,2,1,"修改"); menu.add(0, 3, 2, "刪除"); SubMenu m = menu.addSubMenu(0, 4, 3, "子功能表"); m.add(0,41,0,"子功能表項1"); m.add(0,42,1,"子功能表項2"); m.add(0,43,2,"子功能表項3"); m.add(0,44,3,"子功能表項4");// MenuInflater mi =getMenuInflater();// mi.inflate(R.menu.mymenu,menu); super.onCreateContextMenu(menu, v, menuInfo); } @Override public boolean onContextItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.it_2: Toast.makeText(UIActivity2.this, "觸發了添加1功能", Toast.LENGTH_SHORT).show(); break; case R.id.it_1: Toast.makeText(UIActivity2.this, "觸發了刪除1功能", Toast.LENGTH_SHORT).show(); break; } return super.onContextItemSelected(item); } @Override //重寫 建立選項菜單的方法 public boolean onCreateOptionsMenu(Menu menu) { //添加功能表項目 //純編碼方式// menu.add(0,1,0,"添加");// menu.add(0,2,2,"刪除");// menu.add(0,3,1,"修改"); //載入菜單檔案方式 //1.擷取菜單載入器 MenuInflater mi =getMenuInflater(); mi.inflate(R.menu.mymenu,menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { //Toast.makeText(UIActivity2.this, "選中的功能表項目是" + item.getTitle(), Toast.LENGTH_SHORT).show(); //根據功能表項目的不同響應不同功能 switch (item.getItemId()) { case 1: Toast.makeText(UIActivity2.this, "觸發了添加功能", Toast.LENGTH_SHORT).show(); break; case 2: Toast.makeText(UIActivity2.this, "觸發了刪除功能", Toast.LENGTH_SHORT).show(); break; case 3: Toast.makeText(UIActivity2.this, "觸發了修改功能", Toast.LENGTH_SHORT).show(); break; case R.id.it_2: Toast.makeText(UIActivity2.this, "觸發了添加1功能", Toast.LENGTH_SHORT).show(); break; case R.id.it_1: Toast.makeText(UIActivity2.this, "觸發了刪除1功能", Toast.LENGTH_SHORT).show(); break; } return super.onOptionsItemSelected(item); }}
:
Android課程---用進度條改變圖片透明度