ilk XML
<? Xml version = “1.0″ encoding = “utf-8″?>
<RelativeLayout xmlns: android = “http://schemas.android.com/apk/res/android”
android: orientation = “vertical”
the android: layout_width = “fill_parent The
android: layout_height = “fill_parent The
android: background = “55 million”
>
<ImageSwitcher// this control with the Gallery often used, remember
android: id = “@ + the id/in switcher ‘”
the android: layout_width = “wrap_content The
android: layout_height = “350dip The
android: layout_alignParentLeft = “true”
android: layout_alignParentRight = “true”
/>
< Gallery
android: id = “@ + id/mygallery”
the android: layout_width = “fill_parent The
android: layout_height = “80dp”
android: layout_alignParentBottom = “true”
android: layout_alignParentLeft = “true”
android: gravity = “center_vertical”
android: spacing = “16dp”
/>
</ RelativeLayout>
İki tanımlamak biraz yardım lütfen
Bu okumadan benim kodudur Need. Özel bir ekran
package com.ldci.second.mypnone;
import java.io.File;
import java.util.ArrayList;
import of java.util.List;
import android.app.Activity;
import android.content.Context;
import android.content.res.TypedArray;
import the android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.Toast;
import android.widget.ViewSwitcher;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Gallery.LayoutParams;
public class BgPictureShowActivity extends Activity implements
AdapterView.OnItemSelectedListener, ViewSwitcher.ViewFactory {
the private List <String> the ImageList;
private String [] list;
private ImageSwitcher mSwitcher;
public void onCreate (Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
//// Remove the status bar, and display their own program name
// GetWindow(). SetFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN,
// WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView (R.layout.pictureshow);
The ImageList the getSD();
list = ImageList.toArray (new String [ImageList.size()]);
/* Set the Switcher */
mSwitcher = (ImageSwitcher) findViewById (R.id.switcher);
mSwitcher.setFactory (this);
/* Set the load Switcher mode */
mSwitcher.setInAnimation (AnimationUtils.loadAnimation (this,
android.R.anim.fade_in));
/* Set output Switcher mode */
mSwitcher.setOutAnimation (AnimationUtils.loadAnimation (this,
android.R.anim.fade_out));
mSwitcher.setOnClickListener (new OnClickListener() {
public void onClick (View v) the {
Toast.makeText (BgPictureShowActivity.this, “click”, Toast.LENGTH_SHORT). The show();
}
});
Gallery g = (Gallery) findViewById (R.id.mygallery);
/* Add several ImageAdapter to and set to the Gallery object */
g.setAdapter (new ImageAdapter (this, getSD()));
g.setOnItemSelectedListener (this);
/* Set a itemclickListener event */
g.setOnItemClickListener (new OnItemClickListener()
{
public void the onItemClick (AdapterView, which <?> parent,
View v, int position, long id)
{
Toast.makeText (BgPictureShowActivity.this, “dianjiale”, Toast.LENGTH_SHORT). Show();
}
});
}
private List <String> getSD()
{
/* Set the current path */
The the List <String> it = the new ArrayList <String>();
File f = new File (“/ sdcard /”);
File [] files = f.listFiles();
/* All the files stored in the ArrayList */
for (int i = 0; i <files.length; i + +)
{
The File the file = files [i];
if (getImageFile (file.getPath()))
it.add (file.getPath());
}
return it;
}
private boolean getImageFile (String fName)
{
a boolean the re;
/* Get the extension */
String end = fName.substring (fName.lastIndexOf (“.”) +1,
fName.length()). toLowerCase();
/* Decided by the type of extension The MimeType */
if (end.equals (“jpg”) | | end.equals (“gif”) | | end.equals (“png”)
| | End.equals (“jpeg”) | | end.equals (“bmp”))
{
re = true;
}
else
{
re = false;
}
return the re;
}
/* To rewrite BaseAdapter custom one ImageAdapter class */
public class ImageAdapter the extends BaseAdapter,
{
/* Declare variables */
int mGalleryItemBackground;
private Context mContext;
private the List <String> of lis;
/* ImageAdapter, constructed character */
the public ImageAdapter (Context c, the List <String> li)
{
mContext = c;
of lis = li;
/* Res/values / attrs.xml <declare-styleable> defined
* Gallery attribute */
TypedArray a = obtainStyledAttributes (R.styleable.Gallery);
/* Obtain attribute Gallery Index id */
mGalleryItemBackground = a.getResourceId (
R.styleable.Gallery_android_galleryItemBackground, 0);
/* Let the object styleable properties can be used repeatedly */
a.recycle();
}
/* A few set to rewrite the getCount, the number of returned images */
public int the getCount()
{
return lis.size();
}
/* Must override the method getItem, returns the position */
Public Object getItem (int position)
{
the return position;
}
/* Must be rewritten getItemId pass and position */
public long getItemId (int position)
{
the return position;
}
/* A few set to rewrite the method getView pass and View objects */
public View getView (int position, View convertView,
Of ViewGroup that the parent)
{
/* Generate the ImageView object */
ImageView i = new ImageView (mContext);
/* Set the picture to imageView object */
Bitmap bm = BitmapFactory.decodeFile (lis.
get (position). toString());
i.setImageBitmap (bm);
/* Reset the image width and height */
i.setScaleType (ImageView.ScaleType.FIT_XY);
/* Reset the Layout of the width and height */
i.setLayoutParams (new Gallery.LayoutParams (136, 88));
/* Set the Gallery background images */
i.setBackgroundResource (mGalleryItemBackground);
/* Pass back to imageView object */
return i;
}
}
public void onItemSelected (AdapterView <?> parent, View view, int position,
long id) {
The string photoURL = list [position];
Log.i (“A”, String.valueOf (position));
mSwitcher.setImageURI (Uri.parse (photoURL));
}
public void onNothingSelected (AdapterView <?> parent) {
// TODO Auto-generated method the stub
}
public View makeView() {
ImageView i = new ImageView (this);
i.setBackgroundColor (0xFF000000);
i.setScaleType (ImageView.ScaleType.FIT_CENTER);
i.setLayoutParams (new ImageSwitcher.LayoutParams (
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
return i;
}
}
Bu kod etkinlik kesinlikle bir baş ağrısı artı DAN ağrı olacak görmek için, ama tekrar tekrar MARS Allah'a dayan bu sanayi sabırlı olmayı karakterizedir içinde biz uyardı için çok uzun. çok önemli bir şey yoktur, değerler dosyası klasöründe, kitabın içinde bir xml oluşturmak:
<? Xml version = “1.0″ encoding = “utf-8″?>
<resources>
<declare-styleable name=”Gallery”>
<attr name=”android:galleryItemBackground” />
</ Declare-styleable
</ Resources>
http://developer.aiwgame.com/gallery-show-an-image-from-android-sd-card.html
tam sorun nedir? Yoksa bir problem mi var? Herhangi bir hata kaydı –
Hata yok ama ekranda herhangi bir görüntü göstermiyor – moe
'ImageView' nizi neden WebView'in Çocukluğu olarak kullanıyorsunuz? Garip görünüyor! – theomega