public class MyContents extends AppCompatActivity {
GridView gridView;
String[] thumbArr;
ArrayList<String> list;
LinearLayout linearLayout;
String multiTemplatePath= Environment.getExternalStorageDirectory().getPath()+"/Lewi/Edit/multiTemplate";
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_contents);
gridView=(GridView)findViewById(R.id.gridView);
linearLayout=(LinearLayout)findViewById(R.id.container);
list=new ArrayList<String>();
File file=new File(multiTemplatePath);
String[] multi1=file.list();
for (int i=0;i<multi1.length;i++){
String multi2=multi1[i];
File multi3=new File(multiTemplatePath+"/"+multi2);
String[] multi4=multi3.list();
for (int j=0;j<multi4.length;j++){
String thumb=multi3+"/"+multi4[j]+"/thumb";
File thumbFile=new File(thumb);
String[] lists=thumbFile.list();
list.add(thumb+"/"+lists[0]);
}
}
thumbArr=new String[list.size()];
for (int i=0;i<list.size();i++){
thumbArr[i]=list.get(i);
}
CustomAdapter customAdapter=new CustomAdapter(this,R.layout.low,thumbArr);
gridView.setAdapter(customAdapter);
}
class CustomAdapter extends BaseAdapter{
Context context;
int layout;
String[] img;
LayoutInflater inflater;
public CustomAdapter(Context context,int layout,String[] img){
this.context=context;
this.layout=layout;
this.img=img;
inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return img.length;
}
@Override
public Object getItem(int position) {
return img[position];
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder=null;
if (convertView==null){
viewHolder=new ViewHolder();
convertView=inflater.inflate(layout,null);
viewHolder.view1=(ImageView)convertView.findViewById(R.id.imageView2);
viewHolder.view2=(TextView)convertView.findViewById(R.id.textView3);
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize=4;
Bitmap bmp= BitmapFactory.decodeFile(img[position], options);
bmp=Bitmap.createScaledBitmap(bmp,500,500,false);
// viewHolder.view1.setImageBitmap(bmp);
Glide.with(context).load(img[position]).override(200,200).into(viewHolder.view1);
}
return convertView;
}
}
static class ViewHolder{
public ImageView view1;
public TextView view2;
}
}
일단 제 소스입니다 String[] img에있는 파일들을 불러오는건데
보시다시피 glide를 사용도해보고 그냥 bitmap파일로 만들어서 해보기도했는데 이문제가아닌것같고
알고리즘이 잘못해서 쓸데없는일을 많이하는가싶네요..
로그캣에
04-14 11:32:43.979 29417-29417/com.example.joseph.gellery_image D/Activity: #1 setTransGradationModeColor false
04-14 11:32:44.689 29417-29417/com.example.joseph.gellery_image D/dalvikvm: GC_FOR_ALLOC freed 2528K, 31% free 8700K/12568K, paused 13ms, total 13ms
04-14 11:32:45.004 29417-29417/com.example.joseph.gellery_image D/dalvikvm: GC_FOR_ALLOC freed 1330K, 32% free 8597K/12568K, paused 12ms, total 13ms
04-14 11:32:45.284 29417-29417/com.example.joseph.gellery_image D/dalvikvm: GC_FOR_ALLOC freed 1220K, 32% free 8604K/12568K, paused 13ms, total 13ms
04-14 11:32:45.799 29417-29417/com.example.joseph.gellery_image D/dalvikvm: GC_FOR_ALLOC freed 2439K, 32% free 8618K/12568K, paused 12ms, total 12ms
이렇게 나옵니다 이거하는시간때문에 거의 2초 있다가 뜹니다 어디가 잘못된거죠?! ㅠㅠ
완전허접한질문일지라도 도와주십쇼!!!ㅠㅠ