이동식 저장소

MiTweet 개발일지 6 본문

프로젝트/MiTweet

MiTweet 개발일지 6

해스끼 2020. 8. 28. 13:35

``TweetMiniView``를 다듬었다.

``DynamicGridImageView`` 버그 수정

오늘 사진 3개짜리 트윗을 불러오는 테스트를 했는데, 사진이 제대로 표시되지 않았다.

저 링크는 또 뭐람

문제는 레이아웃이었다. 이미지 로드는 제대로 됐지만, 커스텀 뷰 ``DynamicGridImageView``의 ``width``가 ``-2``로 설정되어 있었다. 분명히 xml에서는 ``MATCH_PARENT``로 했음에도 불구하고..

 

해결 방법은 수동으로 ``LayoutParams``를 설정하면 된다.

// width, height
image_grid_view.layoutParams = LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)

링크도 지웠다.

해결 완료!

``TweetMiniView``에 비디오 뷰 추가

이미지를 보여주는 데 너무 집중한 나머지 비디오를 까먹고 있었다. 안드로이드의 기본 ``VideoView``를 사용할 수도 있지만, 오픈 소스 프로젝트 ``Exoplayer``가 유명하길래 사용해 보았다.

implementation 'com.google.android.exoplayer:exoplayer:2.11.8'

하나의 트윗에 비디오와 이미지가 모두 존재할 수는 없으므로, 미디어의 타입에 따라 비디오 또는 이미지를 보여줘야 한다. ``Twitter4J``에서는 미디어 객체의 타입을 쉽게 알 수 있으므로, 타입에 따라 적절한 뷰를 보여주도록 코드를 작성했다.

 

미디어 타입은 ``image``, ``video``, ``animated_gif`` 세 개로 나뉘지만, ``ImageView``가 gif도 보여준다고 하여 비디오라면 ``ExoPlayer``를 보여주고, 비디오가 아니라면 ``ImageView``를 보여주면 된다.

그러고 보니 비디오 트윗도 작성할 수 있게 해야 하는데? 이건 아마 나중에..?

TODO

  • 답글 불러오기
  • 타임라인 구현 - ``RecyclerView`` 작성하기
  • 타임라인 데이터베이스 정의

'프로젝트 > MiTweet' 카테고리의 다른 글

MiTweet 개발일지 8  (0) 2020.09.08
MiTweet 개발일지 7  (0) 2020.09.04
MiTweet 개발일지 5  (0) 2020.08.27
MiTweet 개발일지 4  (0) 2020.08.19
MiTweet 개발일지 3  (0) 2020.08.16
Comments