首页

android 扫描手机中的图片并显示

java

2020-7-24

package com.example.test4;

import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;

public class MainActivity extends Activity {

	private int mScreenHeight;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		DisplayMetrics outMetrics = new DisplayMetrics();  
        getWindowManager().getDefaultDisplay().getMetrics(outMetrics);  
        mScreenHeight = outMetrics.heightPixels;  
  
        initView();  
        getImages();  
        initEvent();  
	}
	private void initEvent() {
		
		
	}
	private void initView() {
		// TODO Auto-generated method stub
		
	}
	/** 
     * 利用ContentProvider扫描手机中的图片,此方法在运行在子线程中 完成图片的扫描,最终获得jpg最多的那个文件夹 
     */  
    private void getImages()  
    {  
        if (!Environment.getExternalStorageState().equals(  
                Environment.MEDIA_MOUNTED))  
        {  
            Toast.makeText(this, "暂无外部存储", Toast.LENGTH_SHORT).show();  
            return;  
        }  
        // 显示进度条  
        mProgressDialog = ProgressDialog.show(this, null, "正在加载...");  
  
        new Thread(new Runnable()  
        {  

	@Override
	/** 
     * 利用ContentProvider扫描手机中的图片,此方法在运行在子线程中 完成图片的扫描,最终获得jpg最多的那个文件夹 
     */  
    private void getImages()  
    {  
        if (!Environment.getExternalStorageState().equals(  
                Environment.MEDIA_MOUNTED))  
        {  
            Toast.makeText(this, "暂无外部存储", Toast.LENGTH_SHORT).show();  
            return;  
        }  
        // 显示进度条  
        mProgressDialog = ProgressDialog.show(this, null, "正在加载...");  
  
        new Thread(new Runnable()  
        {  
	}
        private Handler mHandler = new Handler()  
        {  
            public void handleMessage(android.os.Message msg)  
            {  
                mProgressDialog.dismiss();  
                //为View绑定数据  
                data2View();  
                //初始化展示文件夹的popupWindw  
                initListDirPopupWindw();  
                
            }  /** 
             * 为View绑定数据 
             */  
            private void data2View()  
            {  
                if (mImgDir == null)  
                {  
                    Toast.makeText(getApplicationContext(), "擦,一张图片没扫描到",  
                            Toast.LENGTH_SHORT).show();  
                    return;  
                }  
          
                mImgs = Arrays.asList(mImgDir.list());  
                /** 
                 * 可以看到文件夹的路径和图片的路径分开保存,极大的减少了内存的消耗; 
                 */  
                mAdapter = new MyAdapter(getApplicationContext(), mImgs,  
                        R.layout.grid_item, mImgDir.getAbsolutePath());  
                mGirdView.setAdapter(mAdapter);  
                mImageCount.setText(totalCount   "张");  
            };  
        };  
}

资源下载此资源下载价格为2D币(VIP免费),请先
资源文件列表
test4/.classpath , 475
test4/.project , 841
test4/.settings/org.eclipse.jdt.core.prefs , 177
test4/AndroidManifest.xml , 876
test4/bin/AndroidManifest.xml , 876
test4/bin/classes/com/example/test4/BasePopupWindowForListView.class , 2903
test4/bin/classes/com/example/test4/Bean$ImageFloder.class , 1379
test4/bin/classes/com/example/test4/Bean.class , 358
test4/bin/classes/com/example/test4/BuildConfig.class , 343
test4/bin/classes/com/example/test4/ImageFloder.class , 1214
test4/bin/classes/com/example/test4/ListImageDirPopupWindow$1.class , 1684
test4/bin/classes/com/example/test4/ListImageDirPopupWindow$OnImageDirSelected.class , 319
test4/bin/classes/com/example/test4/ListImageDirPopupWindow.class , 2788
test4/bin/classes/com/example/test4/MainActivity.class , 4294
test4/bin/classes/com/example/test4/MyAdapter.class , 2246
test4/bin/classes/com/example/test4/R$attr.class , 337
test4/bin/classes/com/example/test4/R$dimen.class , 458
test4/bin/classes/com/example/test4/R$drawable.class , 404
test4/bin/classes/com/example/test4/R$id.class , 390
test4/bin/classes/com/example/test4/R$layout.class , 400
test4/bin/classes/com/example/test4/R$menu.class , 385
test4/bin/classes/com/example/test4/R$string.class , 469
test4/bin/classes/com/example/test4/R$style.class , 428
test4/bin/classes/com/example/test4/R.class , 663
test4/gen/com/example/test4/BuildConfig.java , 159
test4/gen/com/example/test4/R.java , 2492
test4/ic_launcher-web.png , 51394
test4/libs/android-support-v4.jar , 484258
test4/proguard-project.txt , 781
test4/project.properties , 563
test4/res/drawable-hdpi/ic_launcher.png , 7658
test4/res/drawable-mdpi/ic_launcher.png , 3777
test4/res/drawable-xhdpi/ic_launcher.png , 12516
test4/res/drawable-xxhdpi/ic_launcher.png , 24777
test4/res/layout/activity_main.xml , 666
test4/res/menu/main.xml , 263
test4/res/values/dimens.xml , 220
test4/res/values/strings.xml , 222
test4/res/values/styles.xml , 697
test4/res/values-sw600dp/dimens.xml , 203
test4/res/values-sw720dp-land/dimens.xml , 277
test4/res/values-v11/styles.xml , 334
test4/res/values-v14/styles.xml , 391
test4/src/com/example/test4/Adapter.java , 2815
test4/src/com/example/test4/BasePopupWindowForListView.java , 3357
test4/src/com/example/test4/Bean.java , 903
test4/src/com/example/test4/ImageFloder.java , 836
test4/src/com/example/test4/ListImageDirPopupWindow.java , 2422
test4/src/com/example/test4/MainActivity.java , 3137
没有账号? 忘记密码?

社交账号快速登录