編輯:關於Android編程
FullImageActivity.java:
[java]
package com.example.prjandroid;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ImageView;
public class FullImageActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.full_img1);
Intent intent = getIntent();
int position = intent.getExtras().getInt("id");
ImageAdapter imgAdapter = new ImageAdapter(FullImageActivity.this);
ImageView imgView = (ImageView) findViewById(R.id.imgView1);
imgView.setImageResource(imgAdapter.mThumbIds[position]);
}
}
ImageAdapter.java:
package com.example.prjandroid;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public Integer[] mThumbIds = {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10,
R.drawable.emacs11,
R.drawable.emacs12,
R.drawable.emacs13,
R.drawable.emacs14,
R.drawable.emacs15
};
public ImageAdapter(Context context) {
// TODO Auto-generated constructor stub
mContext = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View converView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(mContext);
imgView.setImageResource(mThumbIds[position]);
imgView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imgView.setLayoutParams(new GridView.LayoutParams(70, 70));
return imgView;
}
}
package com.example.prjandroid;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ImageView;
public class FullImageActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.full_img1);
Intent intent = getIntent();
int position = intent.getExtras().getInt("id");
ImageAdapter imgAdapter = new ImageAdapter(FullImageActivity.this);
ImageView imgView = (ImageView) findViewById(R.id.imgView1);
imgView.setImageResource(imgAdapter.mThumbIds[position]);
}
}
ImageAdapter.java:
package com.example.prjandroid;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public Integer[] mThumbIds = {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10,
R.drawable.emacs11,
R.drawable.emacs12,
R.drawable.emacs13,
R.drawable.emacs14,
R.drawable.emacs15
};
public ImageAdapter(Context context) {
// TODO Auto-generated constructor stub
mContext = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View converView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(mContext);
imgView.setImageResource(mThumbIds[position]);
imgView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imgView.setLayoutParams(new GridView.LayoutParams(70, 70));
return imgView;
}
}
ImageAdapter.java:
[java]
package com.example.prjandroid;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public Integer[] mThumbIds = {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10,
R.drawable.emacs11,
R.drawable.emacs12,
R.drawable.emacs13,
R.drawable.emacs14,
R.drawable.emacs15
};
public ImageAdapter(Context context) {
// TODO Auto-generated constructor stub
mContext = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View converView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(mContext);
imgView.setImageResource(mThumbIds[position]);
imgView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imgView.setLayoutParams(new GridView.LayoutParams(70, 70));
return imgView;
}
}
package com.example.prjandroid;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public Integer[] mThumbIds = {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10,
R.drawable.emacs11,
R.drawable.emacs12,
R.drawable.emacs13,
R.drawable.emacs14,
R.drawable.emacs15
};
public ImageAdapter(Context context) {
// TODO Auto-generated constructor stub
mContext = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View converView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(mContext);
imgView.setImageResource(mThumbIds[position]);
imgView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imgView.setLayoutParams(new GridView.LayoutParams(70, 70));
return imgView;
}
}
ImgAdapter.java:
[java]
package com.example.prjandroid;
import android.content.Context;
import android.content.res.TypedArray;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.GridView;
import android.widget.ImageView;
public class ImgAdapter extends BaseAdapter {
// resource draw
private int[] resPics = new int[] {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10
};
private Context m_context;
private int m_galleryItemBackGround;
public ImgAdapter(Context context) {
// TODO Auto-generated constructor stub
m_context = context;
TypedArray typeArray =
m_context.obtainStyledAttributes(R.styleable.galleryThem);
m_galleryItemBackGround = typeArray.getResourceId(
R.styleable.galleryThem_android_galleryItemBackground, 0);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return resPics.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(m_context);
imgView.setImageResource(resPics[position]);
imgView.setScaleType(ImageView.ScaleType.FIT_XY);
imgView.setLayoutParams(new Gallery.LayoutParams(163, 106));
imgView.setBackgroundResource(m_galleryItemBackGround);
return imgView;
}
}
package com.example.prjandroid;
import android.content.Context;
import android.content.res.TypedArray;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.GridView;
import android.widget.ImageView;
public class ImgAdapter extends BaseAdapter {
// resource draw
private int[] resPics = new int[] {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10
};
private Context m_context;
private int m_galleryItemBackGround;
public ImgAdapter(Context context) {
// TODO Auto-generated constructor stub
m_context = context;
TypedArray typeArray =
m_context.obtainStyledAttributes(R.styleable.galleryThem);
m_galleryItemBackGround = typeArray.getResourceId(
R.styleable.galleryThem_android_galleryItemBackground, 0);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return resPics.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(m_context);
imgView.setImageResource(resPics[position]);
imgView.setScaleType(ImageView.ScaleType.FIT_XY);
imgView.setLayoutParams(new Gallery.LayoutParams(163, 106));
imgView.setBackgroundResource(m_galleryItemBackGround);
return imgView;
}
}
MainActivity.java
[java]
package com.example.prjandroid;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.Gallery;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.MultiAutoCompleteTextView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.ViewSwitcher.ViewFactory;
public class MainActivity extends Activity
implements OnClickListener,
OnCheckedChangeListener/* RadioButton */,
OnItemSelectedListener/* Spinner */,
android.widget.CompoundButton.OnCheckedChangeListener/* CheckBox */,
ViewFactory/* ImageSwitcher */,
OnItemClickListener/* GridView */ {
RadioButton m_radioBtn1, m_radioBtn2;
CheckBox m_chkBox1, m_chkBox2;
String m_str = "You Choice: ";
ArrayAdapter<CharSequence> m_adapterView;
Spinner m_spinner;
View m_view1, m_view2, m_view3, m_view4, m_viewList, m_viewArray, m_viewBase;
Boolean m_flag_view = false;
Boolean m_flag_view2 = false;
Boolean m_flag_view3 = false;
Boolean m_flag_viewList = false;
Boolean m_flag_viewArray = false;
Boolean m_flag_viewBase = false;
// resource draw
private int[] resPics = new int[] {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10
};
private int index = 0;
ImageSwitcher m_imgSwticher;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// LayoutInflater inflater = getLayoutInflater();
LayoutInflater inflater = LayoutInflater.from(this);
// setContentView(R.layout.activity_main);
m_view1 = inflater.inflate(R.layout.activity_main, null);
m_view2 = inflater.inflate(R.layout.view_gallery, null);
m_view3 = inflater.inflate(R.layout.view_image_switcher, null);
m_view4 = inflater.inflate(R.layout.gridview02, null);
m_viewList = inflater.inflate(R.layout.list_view, null);
m_viewArray = inflater.inflate(R.layout.view_arrayadapter, null);
m_viewBase = inflater.inflate(R.layout.view_base, null);
setView(m_view1);
Button btnOk = (Button) findViewById(R.id.btnOk);
btnOk.setOnClickListener(this);
// ImageButton
ImageButton imgBtn1 = (ImageButton) findViewById(R.id.imgBtn1);
imgBtn1.setOnClickListener(this);
// Button 2
Button btnGo = (Button) findViewById(R.id.btnGrid);
btnGo.setOnClickListener(this);
// ListView
Button btnListView = (Button) findViewById(R.id.btnListView);
btnListView.setOnClickListener(this);
// AutoComplete
Button btnViewArrayAdapter = (Button) findViewById(R.id.btnArrayAdapter);
btnViewArrayAdapter.setOnClickListener(this);
// Base View
Button btnBaseView = (Button) findViewById(R.id.btnBaseView);
btnBaseView.setOnClickListener(this);
}
//Button
@Override
public void onClick(View v) {
switch (v.getId()) {
case (R.id.btnOk):
setView(m_view2);
if (!m_flag_view) {
// view_gallery is button
Button btnReturn = (Button) findViewById(R.id.btnReturn);
btnReturn.setOnClickListener(this);
//
// Gallery
Gallery gallery = (Gallery) findViewById(R.id.gallery02);
ImgAdapter imgAdapter = new ImgAdapter(MainActivity.this);
gallery.setAdapter(imgAdapter);
m_flag_view = true;
}
break;
case (R.id.btnReturn):
setView(m_view1);
break;
case (R.id.button1):
setView(m_view1);
break;
case (R.id.imgBtn1):
setView(m_view3);
if (!m_flag_view2) {
Button btnReturn2 = (Button) findViewById(R.id.button1);
btnReturn2.setOnClickListener(this);
Button btnPrev = (Button) findViewById(R.id.btnPrev);
btnPrev.setOnClickListener(this);
Button btnNext = (Button) findViewById(R.id.btnNext);
btnNext.setOnClickListener(this);
m_imgSwticher = (ImageSwitcher) findViewById(R.id.imgSwit01);
m_imgSwticher.setFactory(this);
m_flag_view2 = true;
}
break;
case (R.id.btnPrev):
index--;
setPicture(index);
break;
case (R.id.btnNext):
index++;
setPicture(index);
break;
case (R.id.btnGrid):
setView(m_view4);
if (!m_flag_view3) {
GridView gv = (GridView) findViewById(R.id.grid_view);
gv.setAdapter(new ImageAdapter(MainActivity.this));
gv.setOnItemClickListener(this);
m_flag_view3 = true;
}
break;
case (R.id.btnListView):
setView(m_viewList);
if (!m_flag_viewList) {
ListView listView = (ListView) findViewById(R.id.listView01);
List<Map<String, Object>> data = getSampleData();
SimpleAdapter sAdapter = new SimpleAdapter(
MainActivity.this,
data,
R.layout.list_row,
new String[] {
"imgIcon",
"title01",
"desText"
},
new int[] {
R.id.imgIcon,
R.id.title01,
R.id.desText
}
);
listView.setAdapter(sAdapter);
m_flag_viewList = true;
}
break;
case (R.id.btnArrayAdapter):
setView(m_viewArray);
if (!m_flag_viewArray) {
AutoCompleteTextView aCompTextView =
(AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
MultiAutoCompleteTextView mCompTextView =
(MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView1);
ArrayAdapter<String> arrayAdapter =
new ArrayAdapter<String>(
MainActivity.this,
android.R.layout.simple_dropdown_item_1line,
new String[] {
"ab",
"abc",
"abcd",
"abcde",
"abcdef",
"edcba",
"dcba",
"cba",
"ba",
"bcd"
});
aCompTextView.setAdapter(arrayAdapter);
mCompTextView.setAdapter(arrayAdapter);
mCompTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
m_flag_viewArray = true;
}
break;
case (R.id.btnBaseView):
setView(m_viewBase);
if (!m_flag_viewBase) {
// Spinner
m_adapterView = ArrayAdapter.createFromResource(
MainActivity.this,
R.array.bloods,
android.R.layout.simple_spinner_dropdown_item);
m_adapterView.setDropDownViewResource(
android.R.layout.simple_spinner_dropdown_item);
m_spinner = (Spinner) findViewById(R.id.spin01);
m_spinner.setAdapter(m_adapterView);
m_spinner.setOnItemSelectedListener(MainActivity.this);
// CheckBox
m_chkBox1 = (CheckBox) findViewById(R.id.chkBox1);
m_chkBox2 = (CheckBox) findViewById(R.id.chkBox2);
m_chkBox1.setOnCheckedChangeListener(MainActivity.this);
m_chkBox2.setOnCheckedChangeListener(MainActivity.this);
// Radio
RadioGroup radioGrou1 = (RadioGroup) findViewById(R.id.radioGroup01);
m_radioBtn1 = (RadioButton) findViewById(R.id.radioBtn1);
m_radioBtn2 = (RadioButton) findViewById(R.id.radioBtn2);
radioGrou1.setOnCheckedChangeListener(MainActivity.this);
m_flag_viewBase = true;
}
break;
default:
break;
}
}
// RadioButton
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if (checkedId == m_radioBtn1.getId()) {
setToastString("Male").show();
}
else {
setToastString("Female").show();
}
}
// CheckBox
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
switch (buttonView.getId()) {
case (R.id.chkBox1):
if (m_chkBox1.isChecked()) {
m_str += m_chkBox1.getText() + " ";
setToastString(m_str).show();
}
break;
case (R.id.chkBox2):
if (m_chkBox2.isChecked()) {
m_str += m_chkBox2.getText() + " ";
setToastString(m_str).show();
}
break;
default:
break;
}
}
// Spinner-1
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
setToastString(
// this.getResources().getStringArray(R.array.bloods)[arg2]
m_spinner.getSelectedItem().toString()
).show();
arg0.setVisibility(arg1.VISIBLE);
}
// Spinner-2
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int position, long arg3) {
// TODO Auto-generated method stub
Intent intent = new Intent(getApplicationContext(),
FullImageActivity.class);
intent.putExtra("id", position);
startActivity(intent);
}
@Override
public View makeView() {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(this);
imgView.setScaleType(ImageView.ScaleType.FIT_CENTER);
return imgView;
}
private List<Map<String, Object>> getSampleData() {
List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();
for (int i = 0; i < 10; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("imgIcon", R.drawable.ic_launcher);
map.put("title01", "image0" + i);
map.put("desText", "This is image 0" + i);
result.add(map);
}
return result;
}
/**
*
* @param str
* @return
*/
private Toast setToastString (String str) {
Toast toast = Toast.makeText(this, str, Toast.LENGTH_LONG);
toast.setGravity(Gravity.BOTTOM, 0, 0);
return toast;
}
/**
*
* @param v
*/
private void setView(View v) {
setContentView(v);
}
/**
*
* @param iIndex
*/
private void setPicture(int iIndex) {
if (iIndex < 0) {
iIndex = resPics.length - 1;
}
if (iIndex >= resPics.length) {
iIndex = 0;
}
m_imgSwticher.setImageResource(resPics[iIndex]);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
package com.example.prjandroid;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.Gallery;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.MultiAutoCompleteTextView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.ViewSwitcher.ViewFactory;
public class MainActivity extends Activity
implements OnClickListener,
OnCheckedChangeListener/* RadioButton */,
OnItemSelectedListener/* Spinner */,
android.widget.CompoundButton.OnCheckedChangeListener/* CheckBox */,
ViewFactory/* ImageSwitcher */,
OnItemClickListener/* GridView */ {
RadioButton m_radioBtn1, m_radioBtn2;
CheckBox m_chkBox1, m_chkBox2;
String m_str = "You Choice: ";
ArrayAdapter<CharSequence> m_adapterView;
Spinner m_spinner;
View m_view1, m_view2, m_view3, m_view4, m_viewList, m_viewArray, m_viewBase;
Boolean m_flag_view = false;
Boolean m_flag_view2 = false;
Boolean m_flag_view3 = false;
Boolean m_flag_viewList = false;
Boolean m_flag_viewArray = false;
Boolean m_flag_viewBase = false;
// resource draw
private int[] resPics = new int[] {
R.drawable.emacs1,
R.drawable.emacs2,
R.drawable.emacs3,
R.drawable.emacs4,
R.drawable.emacs5,
R.drawable.emacs6,
R.drawable.emacs7,
R.drawable.emacs8,
R.drawable.emacs9,
R.drawable.emacs10
};
private int index = 0;
ImageSwitcher m_imgSwticher;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// LayoutInflater inflater = getLayoutInflater();
LayoutInflater inflater = LayoutInflater.from(this);
// setContentView(R.layout.activity_main);
m_view1 = inflater.inflate(R.layout.activity_main, null);
m_view2 = inflater.inflate(R.layout.view_gallery, null);
m_view3 = inflater.inflate(R.layout.view_image_switcher, null);
m_view4 = inflater.inflate(R.layout.gridview02, null);
m_viewList = inflater.inflate(R.layout.list_view, null);
m_viewArray = inflater.inflate(R.layout.view_arrayadapter, null);
m_viewBase = inflater.inflate(R.layout.view_base, null);
setView(m_view1);
Button btnOk = (Button) findViewById(R.id.btnOk);
btnOk.setOnClickListener(this);
// ImageButton
ImageButton imgBtn1 = (ImageButton) findViewById(R.id.imgBtn1);
imgBtn1.setOnClickListener(this);
// Button 2
Button btnGo = (Button) findViewById(R.id.btnGrid);
btnGo.setOnClickListener(this);
// ListView
Button btnListView = (Button) findViewById(R.id.btnListView);
btnListView.setOnClickListener(this);
// AutoComplete
Button btnViewArrayAdapter = (Button) findViewById(R.id.btnArrayAdapter);
btnViewArrayAdapter.setOnClickListener(this);
// Base View
Button btnBaseView = (Button) findViewById(R.id.btnBaseView);
btnBaseView.setOnClickListener(this);
}
//Button
@Override
public void onClick(View v) {
switch (v.getId()) {
case (R.id.btnOk):
setView(m_view2);
if (!m_flag_view) {
// view_gallery is button
Button btnReturn = (Button) findViewById(R.id.btnReturn);
btnReturn.setOnClickListener(this);
//
// Gallery
Gallery gallery = (Gallery) findViewById(R.id.gallery02);
ImgAdapter imgAdapter = new ImgAdapter(MainActivity.this);
gallery.setAdapter(imgAdapter);
m_flag_view = true;
}
break;
case (R.id.btnReturn):
setView(m_view1);
break;
case (R.id.button1):
setView(m_view1);
break;
case (R.id.imgBtn1):
setView(m_view3);
if (!m_flag_view2) {
Button btnReturn2 = (Button) findViewById(R.id.button1);
btnReturn2.setOnClickListener(this);
Button btnPrev = (Button) findViewById(R.id.btnPrev);
btnPrev.setOnClickListener(this);
Button btnNext = (Button) findViewById(R.id.btnNext);
btnNext.setOnClickListener(this);
m_imgSwticher = (ImageSwitcher) findViewById(R.id.imgSwit01);
m_imgSwticher.setFactory(this);
m_flag_view2 = true;
}
break;
case (R.id.btnPrev):
index--;
setPicture(index);
break;
case (R.id.btnNext):
index++;
setPicture(index);
break;
case (R.id.btnGrid):
setView(m_view4);
if (!m_flag_view3) {
GridView gv = (GridView) findViewById(R.id.grid_view);
gv.setAdapter(new ImageAdapter(MainActivity.this));
gv.setOnItemClickListener(this);
m_flag_view3 = true;
}
break;
case (R.id.btnListView):
setView(m_viewList);
if (!m_flag_viewList) {
ListView listView = (ListView) findViewById(R.id.listView01);
List<Map<String, Object>> data = getSampleData();
SimpleAdapter sAdapter = new SimpleAdapter(
MainActivity.this,
data,
R.layout.list_row,
new String[] {
"imgIcon",
"title01",
"desText"
},
new int[] {
R.id.imgIcon,
R.id.title01,
R.id.desText
}
);
listView.setAdapter(sAdapter);
m_flag_viewList = true;
}
break;
case (R.id.btnArrayAdapter):
setView(m_viewArray);
if (!m_flag_viewArray) {
AutoCompleteTextView aCompTextView =
(AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
MultiAutoCompleteTextView mCompTextView =
(MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView1);
ArrayAdapter<String> arrayAdapter =
new ArrayAdapter<String>(
MainActivity.this,
android.R.layout.simple_dropdown_item_1line,
new String[] {
"ab",
"abc",
"abcd",
"abcde",
"abcdef",
"edcba",
"dcba",
"cba",
"ba",
"bcd"
});
aCompTextView.setAdapter(arrayAdapter);
mCompTextView.setAdapter(arrayAdapter);
mCompTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
m_flag_viewArray = true;
}
break;
case (R.id.btnBaseView):
setView(m_viewBase);
if (!m_flag_viewBase) {
// Spinner
m_adapterView = ArrayAdapter.createFromResource(
MainActivity.this,
R.array.bloods,
android.R.layout.simple_spinner_dropdown_item);
m_adapterView.setDropDownViewResource(
android.R.layout.simple_spinner_dropdown_item);
m_spinner = (Spinner) findViewById(R.id.spin01);
m_spinner.setAdapter(m_adapterView);
m_spinner.setOnItemSelectedListener(MainActivity.this);
// CheckBox
m_chkBox1 = (CheckBox) findViewById(R.id.chkBox1);
m_chkBox2 = (CheckBox) findViewById(R.id.chkBox2);
m_chkBox1.setOnCheckedChangeListener(MainActivity.this);
m_chkBox2.setOnCheckedChangeListener(MainActivity.this);
// Radio
RadioGroup radioGrou1 = (RadioGroup) findViewById(R.id.radioGroup01);
m_radioBtn1 = (RadioButton) findViewById(R.id.radioBtn1);
m_radioBtn2 = (RadioButton) findViewById(R.id.radioBtn2);
radioGrou1.setOnCheckedChangeListener(MainActivity.this);
m_flag_viewBase = true;
}
break;
default:
break;
}
}
// RadioButton
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if (checkedId == m_radioBtn1.getId()) {
setToastString("Male").show();
}
else {
setToastString("Female").show();
}
}
// CheckBox
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
switch (buttonView.getId()) {
case (R.id.chkBox1):
if (m_chkBox1.isChecked()) {
m_str += m_chkBox1.getText() + " ";
setToastString(m_str).show();
}
break;
case (R.id.chkBox2):
if (m_chkBox2.isChecked()) {
m_str += m_chkBox2.getText() + " ";
setToastString(m_str).show();
}
break;
default:
break;
}
}
// Spinner-1
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
setToastString(
// this.getResources().getStringArray(R.array.bloods)[arg2]
m_spinner.getSelectedItem().toString()
).show();
arg0.setVisibility(arg1.VISIBLE);
}
// Spinner-2
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int position, long arg3) {
// TODO Auto-generated method stub
Intent intent = new Intent(getApplicationContext(),
FullImageActivity.class);
intent.putExtra("id", position);
startActivity(intent);
}
@Override
public View makeView() {
// TODO Auto-generated method stub
ImageView imgView = new ImageView(this);
imgView.setScaleType(ImageView.ScaleType.FIT_CENTER);
return imgView;
}
private List<Map<String, Object>> getSampleData() {
List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();
for (int i = 0; i < 10; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("imgIcon", R.drawable.ic_launcher);
map.put("title01", "image0" + i);
map.put("desText", "This is image 0" + i);
result.add(map);
}
return result;
}
/**
*
* @param str
* @return
*/
private Toast setToastString (String str) {
Toast toast = Toast.makeText(this, str, Toast.LENGTH_LONG);
toast.setGravity(Gravity.BOTTOM, 0, 0);
return toast;
}
/**
*
* @param v
*/
private void setView(View v) {
setContentView(v);
}
/**
*
* @param iIndex
*/
private void setPicture(int iIndex) {
if (iIndex < 0) {
iIndex = resPics.length - 1;
}
if (iIndex >= resPics.length) {
iIndex = 0;
}
m_imgSwticher.setImageResource(resPics[iIndex]);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
示意代碼: /** * 調用系統的分享功能 * Created by admin on 15-4-13. */public class ShareActivit
首先實現簡單布局: 復制代碼 代碼如下: <EditText android:id=@+id/et_url android:layout_width=w
使用ImageView會遇到的問題 在Android應用中,都少不了圖片的顯示,ImageView,輪播圖,ViewPager等等,很多
深入理解Adapter 一、ListView ListView是Android開發過程中較為常見的組件之一,它將數據以列表的形式展現出來。一般而言,一個ListView由