'problem'에 해당되는 글 3건

  1. 안드로이드 개발 - 진저브레드(2.3) 이하 버전에서 리스트뷰 스크롤시 하얗거나 검게 변하는 문제 해결
  2. Android GridView 키보드가 있을 시 아이템을 가려 스크롤이 안되는 문제 해결(키보드가 나타날때 리사이즈)
  3. Rewrite 묘듈 활성화 - 리눅스(우분투)에서 XE 짧은 주소 사용하기 문제
안드로이드 진저브레드(2.3)의 상위 버전인 아이스크림 샌드위치나 젤리빈에서는 이런 현상이 없는데 유독 진저브레드 이하 버전에서는 리스트를 스크롤할 시에 배경이 보이지 않고 하얗거나 검게 변하는 현상이 있습니다.

이런 현상이 있는 이유는 스크롤 속도 최적화를 위해 있는 것인데, 오히려 스크롤이 부자연스러울 뿐더러 보기도 싫습니다.


안드로이드 개발 - 진저브레드(2.3) 이하 버전에서 리스트뷰 스크롤시 하얗거나 검게 변하는 문제 해결

1. 리스트뷰가 정의되어있는 레이아웃에 아래 구분을 추가해줍니다.


   android:cacheColorHint="#00000000" 

예시)
 
<ListView 

    android:id="@android:id/list"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:cacheColorHint="#00000000" 

    android:paddingLeft="@dimen/list_padding"

    android:paddingRight="@dimen/list_padding" />



2. 이 구문은 스크롤 캐시를 투명하게 함으로써 뒤 배경이 보이게 하는 것이므로, 이젠 진저브레드 이하의 운영체제에서도 잘 나오는 것을 확인할 수 있습니다.




도움이 되었나요?
그럼 손가락을 눌러주세요:) 
안드로이드 레이아웃중 하나인 GridView를 사용할때가 참 많습니다. ListView보다 자세한 정보는 아니지만 한번에 많은 양의 정보나 아이콘을 보여줄때 주로 쓰입니다.
저같은 경우에는 검색 앱인 FastEngine 에서 주로 사용됩니다.

그런데 GridView에서 많은 양의 아이템이 있을 시에 키보드 아래의 아이콘은 스크롤이 안되는 문제가 발생하였습니다.
ListView에서는 잘되는데 GridView에서만 되지 않았습니다.

(키보드 아래에 있는 아이콘이 스크롤이 안되 보이지 않습니다.)

해결 방법(키보드가 나타날때 앱 크기 리사이즈)
 
해결방법은 간단했습니다. 열심히 구글링해서 찾아낸 결과 AndroidManifest.xml에 자신의 액티비티 정의 항목에서
아래 코드를 삽입해주시면 됩니다.

android:windowSoftInputMode="adjustResize"


이 코드는 키보드가 나타날때 앱 크기를 리사이즈해주는 코드로써 화면에 키보드를 제외한 공간을 앱의 공간으로 쓰이게 합니다.

따라서 이제 키보드가 있는 상태에서도 끝까지 스크롤이 가능하게 되었습니다.



조금이라도 도움이 되었습니까?
도움이 되셨으면 손가락을 눌러주세요 :) 

우분투에 XE를 설치하면 짧은 주소로 이동했을 경우에는 이동이 안 되는 경우가 있었습니다.
짧은 주소를 당담하는 .htaccess 문제이며 Rewrite 묘듈을 설치해주면 해결됩니다.
해결하기 위해 아래 스탭을 따라주세요.

1.  .htaccess 제대로 이동되어있는지 확인
.htacces 파일은 숨김 파일입니다. 따라서 유닉스 기반에서는 보이지 않을 수 있습니다.
따라서 먼저 이 파일이 없으면 짧은 주소가 적용 안되는 것은 당연합니다.

XE 설치 파일을 옮길 때 .htacces 파일 있는지 꼭 확인하시고 우분투에서는 보기--> 숨겨진 파일 보기를 눌러 제대로 옮겨져 있는지 확인하셔야 합니다.

따로 .htacces 파일을 옮기셨다면 권한설정 꼭 확인하시구요.

2. Rewrite_module 설치
 우분투에서는 기본적으로 이 묘듈이 비활성화 되어 있습니다.
이것을 활성화해주면 정상적인 짧은 주소 사용이 가능합니다.

1. 터미널을 열어준 뒤에 sudo a2enmod rewrite 입력

2. gksu nautilus 입력

3. /etc/apache2/apache2.conf 를 열린 탐색기로 찾은 후 gedit 로 연다.(더블클릭)

4. 맨 아랫줄에 아래 코드 삽입.
<IfModule mod_rewrite.c>
rewriteEngine On
</IfModule>

5. /etc/apache2/sites-enabled/000-default 파일을 연다.

6. 아래 소스처럼 비슷하게 생긴 곳을 찾은 뒤 none이나 deny로 되어있는 부분을 all로 고쳐 줍니다.
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny

 7. 터미널을 연 뒤에 아래 명령어를 입력해 아파치를 재시작합니다.
sudo /etc/init.d/apache2 restart



다 읽으셨으면 손가락 눌러주세요 :)