총 게시물 39,122건, 최근 0 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[안드로이드]

firebase에서 DB내용가져오기

글쓴이 : 주혀비 날짜 : 2017-12-01 (금) 14:46 조회 : 2640
글주소 : http://www.androidside.com/B49/168904
 
  BOLD 교보문고
BOLD, e-교환권 최대 9천원+간편결제/카드혜택 8만6천원, 바로드림 배송!
www.kyobobook.co.kr
  MMORPG 대작, 여황제
미인과 함께 적을 섬멸하라! 탄탄한 스토리, 고퀄리티 그래픽, 현란한 스킬!
queen.topgame.kr
  특급 악마의 유혹 데몬온라인
카우방에서 렙업하고 메피잡아서 조던링 먹던 그 재미! 이제 웹에서 즐기세요!
dm.noblegames.kr
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang



public class PhotoViewer extends Activity {

private ChildEventListener mChildEventListener;

Activity act = this;

String ImgUrl;

GridView gridView;
//이미지 배열 선언
ArrayList<Bitmap> picArr = new ArrayList<Bitmap>();

@Override
public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.photo_viewer);

FirebaseDatabase.getInstance().getReference("url");
mChildEventListener = new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
PhotoData photoData = dataSnapshot.getValue(PhotoData.class);
photoData.firebaseKey = dataSnapshot.getKey();
ImgUrl = photoData.imageUrl;
}


@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}

@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {

}

@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}

@Override
public void onCancelled(DatabaseError databaseError) {
}
};
FirebaseDatabase.getInstance().getReference().addChildEventListener(mChildEventListener);


Bitmap bm = LoadImage(ImgUrl);
// Bitmap bm1 = BitmapFactory.decodeResource(getResources(),R.drawable.boy);

picArr.add(bm);
// picArr.add(bm1);

gridView = (GridView) findViewById(R.id.ImgGridView);
gridView.setAdapter(new gridAdapter());


}

private Bitmap LoadImage( String $imagePath ) {
// TODO Auto-generated method stub
InputStream inputStream = OpenHttpConnection( $imagePath ) ;
Bitmap bm = BitmapFactory.decodeStream( inputStream ) ;

return bm;
}

private InputStream OpenHttpConnection(String $imagePath) {
// TODO Auto-generated method stub
InputStream stream = null ;
try {
URL url = new URL( $imagePath ) ;
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection() ;
urlConnection.setRequestMethod( "GET" ) ;
urlConnection.connect() ;
if( urlConnection.getResponseCode() == HttpURLConnection.HTTP_OK ) {
stream = urlConnection.getInputStream() ;
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return stream ;
}

public class gridAdapter extends BaseAdapter {

LayoutInflater inflater;

public gridAdapter() {
inflater = (LayoutInflater) act.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return picArr.size(); //그리드뷰에 출력할 목록 수
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return picArr.get(position); //아이템을 호출할 때 사용하는 메소드
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position; //아이템의 아이디를 구할 때 사용하는 메소드
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if(convertView == null) {
convertView = inflater.inflate(R.layout.row, parent, false);
}
ImageView imageView = (ImageView) convertView.findViewById(R.id.imageView1);
imageView.setImageBitmap(picArr.get(position));

return convertView;
}
}
}
파이어베이스 데이터베이스에 스토리지에 사진을 올릴때 다운로드url을 저장하게 하였습니다.
저장된 사진들을 그리드뷰에 넣고 싶은데 저장된url을 어떻게 가져와야하는지 모르겠습니다 도와주세요 ㅠㅠ



질문자가 자신의 포인트 28 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 22을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

은빛파도 2017-12-04 (월) 14:19
FirebaseDatabase.getInstance().getReference("url");

이게 아니고

FirebaseDatabase.getInstance().getReference("images");

아닌가요?

댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기