2013-08-20 4 views
-1

создать галерею приложение, то я хочу, чтобы добавить эффект масштабирования для изображений в моей галерее, добавив внешнюю библиотеку под названием: ImageVIewZoom.jar Из этой ссылки: https://github.com/kilaka/ImageViewZoom Я только добавьте файл jar не весь проект ImageViewZoom в мой проект.Как использовать библиотеку баночки после импорта в существующем проекте

добавить библиотеку следуя таким образом:

1- мои LIBS -> правая кнопка мыши -> Import -> File System -> ImageViewZoom.jar

2- MyProject -> правая кнопка мыши -> Свойства -> Путь сборки Java -> Библиотеки -> Добавить Jar -> ImageViewZoom.jar.

Теперь jar-файл уже в моем проекте, как я могу использовать или использовать класс jar внутри своего класса галереи, поэтому, наконец, при запуске приложения мои изображения будут иметь эффект масштабирования.

Am новый для андроида и впервые использовать внешнюю библиотеку внутри моего проекта,

Edit: ли мне нужно добавить код в моей галерее класса или внутри импорта, если это так, как это будет ,

это мой класс галереи, на самом деле это не мой код, но я основал здесь в stackoverflow и использую его для создания бесконечной галереи.

@SuppressWarnings("deprecation") 
public class DayGallery extends Activity { 
TextView tv; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    // Set the layout to use 
    setContentView(R.layout.main); 

    InfiniteGallery galleryOne = (InfiniteGallery) findViewById(R.id.galleryOne); 
    galleryOne.setAdapter(initializeImages()); 
    galleryOne.setSelection(galleryOne.getCount()/2); 
      }   


private InfiniteGalleryAdapter initializeImages() { 
    InfiniteGalleryAdapter galleryAdapter = null; 

    String day = getIntent().getStringExtra("dayname"); 


    if(day.equalsIgnoreCase("london")){ 
     int[] tempimages = { R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher }; 
     String[] name = { " 1"," 2", " 3"}; 

     galleryAdapter=new InfiniteGalleryAdapter(this, tempimages, name); } 

    else if(day.equalsIgnoreCase("paris")){ 
     int[] tempimages = { R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher }; 
     String[] name = { "4","5", "6"}; 

     galleryAdapter=new InfiniteGalleryAdapter(this, tempimages, name); } 

    else if(day.equalsIgnoreCase("rom")){ 
     int[] tempimages = { R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher }; 
     String[] name = { "7","8", "9"}; 

     galleryAdapter=new InfiniteGalleryAdapter(this, tempimages, name); } 


       } 

    } 

    return galleryAdapter; 
      } 
      } 


class InfiniteGalleryAdapter extends BaseAdapter { 
private Context mContext; 
private int[] images; 
private String[] name; 
public InfiniteGalleryAdapter(Context c, int[] imageIds,String[] names) { 
    this.mContext = c; 
    images = imageIds; 
    name=names; 
    inflater = (LayoutInflater)mContext.getSystemService (Context.LAYOUT_INFLATER_SERVICE); } 

public int getCount() { 
    return Integer.MAX_VALUE; 
       } 

public Object getItem(int position) { 
    return position; 
      } 

public long getItemId(int position) { 
    return position; 
      } 

private LayoutInflater inflater=null; 


public class ViewHolder{ 
    public TextView text; 
    public ImageView image; 
        } 


public View getView(int position, View convertView, ViewGroup parent) { 
    ImageView i = getImageView(); 

    int itemPos = (position % images.length); 

    try { i.setImageResource(images[itemPos]); ((BitmapDrawable) i.getDrawable()).setAntiAlias(true); 
       } 

    catch (OutOfMemoryError e) { Log.e("InfiniteGalleryAdapter", "Out of memory creating imageview. Using empty view.", e); 
          } 

    View vi=convertView; 
    ViewHolder holder; 
    if(convertView==null){ 
     vi = inflater.inflate(R.layout.gallery_items, null); 
     holder=new ViewHolder(); holder.text=(TextView)vi.findViewById(R.id.textView1); 
     holder.image=(ImageView)vi.findViewById(R.id.image); 
     vi.setTag(holder); } 

    else holder=(ViewHolder)vi.getTag(); 
    holder.text.setText(name[itemPos]); 

    final int stub_id=images[itemPos]; 
    holder.image.setImageResource(stub_id); 

    return vi; 
       } 

private ImageView getImageView() { 

    ImageView i = new ImageView(mContext); 

    return i; 
     } 
      } 

@SuppressWarnings("deprecation") 
class InfiniteGallery extends Gallery { 

public InfiniteGallery(Context context) { 
    super(context); 
    init(); 
       } 

public InfiniteGallery(Context context, AttributeSet attrs) { 
    super(context, attrs); 
    init(); 
       } 

public InfiniteGallery(Context context, AttributeSet attrs, int defStyle) { 
    super(context, attrs, defStyle); 
    init(); 
        } 

private void init(){ 
    // These are just to make it look pretty 
    setSpacing(50); 
    setHorizontalFadingEdgeEnabled(false); 
      } 
      } 

Любая помощь будет высоко ценится .THANKS много

ответ

0

Да, это правильный способ добавить .jar библиотеки. Вы можете использовать его так же, как в обычной java (предполагая).

ABCD a = new ABCD(); 
a.method(); 

В вашем случае у вашей библиотеки есть пример кода. See here.

С уважением,

+0

делает мне нужно добавить код в моей галерее класса или внутри импорта, если это так, как это будет. благодаря – androidqq6

Смежные вопросы