0
그리드가 2x5입니다. 그리드의 각 요소에는 이미지가 포함됩니다. 이미지를 오랫동안 누를 때 갤러리로 이동해야합니다. 여기서 갤러리에서 그림을 선택하고이 그리드 항목에 지정할 수 있습니다. 이 작업을 수행하는 방법?갤러리에서 그리드 항목에 이미지를 프로그래밍 방식으로 추가하십시오.
그리드가 2x5입니다. 그리드의 각 요소에는 이미지가 포함됩니다. 이미지를 오랫동안 누를 때 갤러리로 이동해야합니다. 여기서 갤러리에서 그림을 선택하고이 그리드 항목에 지정할 수 있습니다. 이 작업을 수행하는 방법?갤러리에서 그리드 항목에 이미지를 프로그래밍 방식으로 추가하십시오.
격자보기를 사용하여 View 호출기와 결합 할 수 있다고 생각합니다. 다음은이를 수행 할 수있는 방법의 예입니다.
public class GridGallery extends BaseAdapter {
Context context;
public GridGallery(Context context) {
this.context = context;
}
@Override
public int getCount() {
return numberOfImages;
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final ImageView view;
if(convertView == null) {
view = new ImageView(context);
view.setScaleType(ImageView.ScaleType.FIT_CENTER);
view.setLayoutParams(new GridView.LayoutParams(screenWidth/4, screenHeight/4));
view.setAdjustViewBounds(false);
view.setPadding(2, 2, 2, 2);
view.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
// You can set your View Pager adapter here
//
return false;
}
});
if(view!=null) {
// Here you can download your images from internet.
thumbnailLoader.DisplayImage(urlList.get(position), view);
notifyDataSetChanged(); //Calling this helped to solve the problem.
view.setTag(position);
}
return view;
}
}
이것은 완벽한 해결책은 아니지만 아이디어를 줄 수 있습니다. 갤러리 (정확히 안드로이드 갤러리)에서 이미지를 얻고 싶다면 내가 말했던 것처럼 뷰 페이저를 사용할 수 있으며 안드로이드가 이미지를 유지하는 SD 메모리 카드 나 내부 메모리에서 이미지를 가져올 수 있습니다. – osayilgan