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

firebase에서 DB내용가져오기

글쓴이 : 주혀비 날짜 : 2017-12-01 (금) 14:46 조회 : 316
글주소 : http://www.androidside.com/B49/168904
 
  나의 비즈니스 파트너 크몽
당신의 일을 해결해줄 전문가들이 있는 곳, 크몽! 당신의 비즈니스를 도와드립니다
www.kmong.com
  스타일어닝IMAGE
어닝,코니탑,바네트,아스테이지 제작 시공전문,경기도 어닝IMAGE
styleawning.co.kr
  사무실창업 월15만 비즈온
사업자등록+사무실 언제나이용, 세무대행포함 15만 3+1, 법인설립수수료 전액지원
www.thebizon.co.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 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기