전체보기
-
안드로이드 이미지버튼으로 버튼 눌림 효과 주기2013.07.17
-
안드로이드 뒤로가기 버튼으로 종료하기2013.07.17
-
루트 권한 폴더를 내 계정 권한폴더로 바꾸기2013.07.17
-
PlayFramework 2 테스트 방법2013.07.17
-
파일 경로 찾기2013.07.17
-
루트 계정으로 작업하기2013.07.17
-
안드로이드 EdtiText 입력 숫자 검사하기2013.07.14
안드로이드 이미지 캡쳐시 Out of Memory 현상 해결법
이미지를 캡쳐하는 어플을 만들었는데 저장하기 버튼을 누르면 캡쳐가 되는 기능이었다.
그런데 저장하기를 누르니까
java.lang.OutOfMemoryError
at android.graphics.Bitmap.nativeCreate(Native Method)
at android.graphics.Bitmap.createBitmap(Bitmap.java:605)
at android.graphics.Bitmap.createBitmap(Bitmap.java:585)
at com.project.app.ResultActivity.onClick(ResultActivity.java:860)
at android.view.View.performClick(View.java:3531)
at android.view.View$PerformClick.run(View.java:14125)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4449)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554)
at dalvik.system.NativeStart.main(Native Method)
이런 에러가 나타났다. 그래서 해결책을 찾고 있었는데 다 recycle()이거나 BitmapFactory등등 뭔가 복잡했다.
내 실력으로는 잘 이해가 안갔다.
그러다 되게 간단해 보이는 방법을 찾았는데
AndroidManifest.xml 파일에
<application>
....
android:largeHeap="true"
....
</application>
어플리케이션 부분에 이 옵션을 주는 것이었다. 어플리케이션에 메모리할당을 더 크게 늘려주는 옵션이라나...
아무튼 적용해보니 에러가 발생하지 않았다.
감격 ㅠㅠ
물론 이게 100%해결책은 아니지만 가장 간단한 해결책이 되지 않을까 싶다.
'지식메모 > 안드로이드 Android' 카테고리의 다른 글
안드로이드 EditText에 텍스트 집어넣기 (0) | 2013.07.20 |
---|---|
안드로이드 카메라 호출해서 이미지 크롭하기 (0) | 2013.07.20 |
안드로이드 이미지버튼으로 버튼 눌림 효과 주기 (0) | 2013.07.17 |
안드로이드 뒤로가기 버튼으로 종료하기 (0) | 2013.07.17 |
안드로이드 EdtiText 입력 숫자 검사하기 (0) | 2013.07.14 |
안드로이드 이미지버튼으로 버튼 눌림 효과 주기
버튼이 눌렸을때와 안 눌렸을때 각 버튼이미지를 프로젝트에 넣어주고
(res폴더 안에 있는 drawable-hdpi 등등 폴더안에)
res폴더에 drawable 폴더를 만들고 안에다가
눌림효과를 줄 xml 파일을 만들어 준다. ex) button_click.xml
그리고 그 안에 밑에 소스를 추가
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/after_button" /> <!-- 눌린 후 버튼이미지 파일명을 써준다.--> <!-- pressed --> <item android:drawable="@drawable/before_button" /> <!-- 눌리기 전 버튼이미지 파일명을 써준다..--> <!-- default --> </selector> |
위와 같이 해주고
이미지버튼 눌림효과를 줄 xml 파일로 가서 이미지버튼 부분에
android:background="@drawable/button_click"
이걸 추가해준다. button_click 은 아까 drawable 폴더 안에 만들어둔 xml 파일명이다.
<ImageButton
android:id="@+id/button_custom"
android:layout_width="100sp"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="143dp"
android:background="@drawable/button_click" />
이렇게 하면 눌림효과가 만들어진다.
'지식메모 > 안드로이드 Android' 카테고리의 다른 글
안드로이드 카메라 호출해서 이미지 크롭하기 (0) | 2013.07.20 |
---|---|
안드로이드 이미지 캡쳐시 Out of Memory 현상 해결법 (4) | 2013.07.19 |
안드로이드 뒤로가기 버튼으로 종료하기 (0) | 2013.07.17 |
안드로이드 EdtiText 입력 숫자 검사하기 (0) | 2013.07.14 |
안드로이드 EditText 입력 글씨 색깔 바꾸기 (0) | 2013.07.09 |
안드로이드 뒤로가기 버튼으로 종료하기
public class MainActivity extends Activity{
다음에 삽입해주면 끝
private static final int MSG_TIMER_EXPIRED = 1; private static final int BACKEY_TIMEOUT = 2000; private boolean mIsBackKeyPressed = false; private long mCurrentTimeInMillis = 0; @Override public void onBackPressed() { if(mIsBackKeyPressed == false){ mIsBackKeyPressed = true; mCurrentTimeInMillis = Calendar.getInstance().getTimeInMillis(); Toast.makeText(this, "뒤로 버튼을 한번 더 누르시면 종료됩니다.", Toast.LENGTH_SHORT).show(); startTimer(); } else { mIsBackKeyPressed = false; if(Calendar.getInstance().getTimeInMillis() <= (mCurrentTimeInMillis + (BACKEY_TIMEOUT))){ finish(); } } } private void startTimer(){ mTimerHander.sendEmptyMessageDelayed(MSG_TIMER_EXPIRED, BACKEY_TIMEOUT); } private Handler mTimerHander = new Handler(){ public void handleMessage(Message msg){ switch(msg.what){ case MSG_TIMER_EXPIRED: { mIsBackKeyPressed = false; } break; } } };
'지식메모 > 안드로이드 Android' 카테고리의 다른 글
안드로이드 이미지 캡쳐시 Out of Memory 현상 해결법 (4) | 2013.07.19 |
---|---|
안드로이드 이미지버튼으로 버튼 눌림 효과 주기 (0) | 2013.07.17 |
안드로이드 EdtiText 입력 숫자 검사하기 (0) | 2013.07.14 |
안드로이드 EditText 입력 글씨 색깔 바꾸기 (0) | 2013.07.09 |
안드로이드 특정파일 미디어 스캐닝 (5) | 2013.07.08 |
루트 권한 폴더를 내 계정 권한폴더로 바꾸기
루트 권한 폴더를 내 계정권한으로 바꾸기
sudo chown -R 내계정:내계정 해당폴더
ex) sudo chown -R jeong:jeong test_auth
test_auth 폴더가 현재 root root로 되어있는데 이걸 내 계정 권한으로 바꿔보겠다.
jeong jeong으로 바뀐 모습
'지식메모 > 리눅스' 카테고리의 다른 글
vim 문자열 찾기 (0) | 2013.09.02 |
---|---|
리눅스 운영체제 비트 확인하기 (0) | 2013.07.26 |
파일 경로 찾기 (0) | 2013.07.17 |
루트 계정으로 작업하기 (0) | 2013.07.17 |
PlayFramework : Ooops - Something went wrong! Exception:java.io.IOException: Cannot write parent directory: Path(/) of /helloworld 메세지 해결 (0) | 2013.04.16 |
PlayFramework 2 테스트 방법
해당 프로젝트로 가서
play
해서 플레이 콘솔창으로 들어간 다음
test
하면 모든 테스트 진행
test-only 폴더명.패키지명.클래스명
상황에 따라
test-only 패키지명.클래스명
test-only 클래스명
하면 특정 클래스만 테스트 진행
플레이프레임워크 사이트에서 설명
'지식메모 > PlayFramework 2' 카테고리의 다른 글
자바에서 쉘스크립트 실행하기 (0) | 2013.07.22 |
---|
파일 경로 찾기
리눅스에서 해당 파일이 어딨는지 궁금하다면
locate 파일명
이라고 쳐주면 어딨는지 나온다.
apache2.conf 라는 파일을 찾기위해
locate apache2.conf 를 수행한 모습.
2가지 파일의 경로가 나온다.
만약 새로 프로그램을 깔고 어딨는지 찾으려고 했는데 안 나온다면
updatedb
를 한번 수행해주고 다시 locate 파일명 을 해주면 나타난다.
'지식메모 > 리눅스' 카테고리의 다른 글
vim 문자열 찾기 (0) | 2013.09.02 |
---|---|
리눅스 운영체제 비트 확인하기 (0) | 2013.07.26 |
루트 권한 폴더를 내 계정 권한폴더로 바꾸기 (0) | 2013.07.17 |
루트 계정으로 작업하기 (0) | 2013.07.17 |
PlayFramework : Ooops - Something went wrong! Exception:java.io.IOException: Cannot write parent directory: Path(/) of /helloworld 메세지 해결 (0) | 2013.04.16 |
루트 계정으로 작업하기
리눅스에서 콘솔에서 작업할때 root 계정이 아니면 명령어를 칠 때마다 sudo 를 쳐줘야 한다.
그래서 root계정으로 바꿔서 작업하면 편하다
su -
라고 명령어를 입력하면 계정이 바뀌는 걸 볼 수 있다.
스샷
jeong 에서 root로 바뀐 걸 볼 수 있다.
'지식메모 > 리눅스' 카테고리의 다른 글
vim 문자열 찾기 (0) | 2013.09.02 |
---|---|
리눅스 운영체제 비트 확인하기 (0) | 2013.07.26 |
루트 권한 폴더를 내 계정 권한폴더로 바꾸기 (0) | 2013.07.17 |
파일 경로 찾기 (0) | 2013.07.17 |
PlayFramework : Ooops - Something went wrong! Exception:java.io.IOException: Cannot write parent directory: Path(/) of /helloworld 메세지 해결 (0) | 2013.04.16 |
안드로이드 EdtiText 입력 숫자 검사하기
사용자로부터 숫자를 입력 받을때 그 값을 검사하고 싶을때 사용한다.
예를 들면 1부터 5까지만 입력을 받고 싶다면 사용자가 5 보다 큰 수를 입력했을때
값을 초기화 해버리면서 토스트메세지를 즉시 띄우게 된다.
EditText et=(EditText)findViewById(R.id.num); //해당 에디트텍스트 선언
et.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
if(s.toString().length() > 0){ //문자열s의 길이가 0보다 크면
if(Integer.parseInt(s.toString()) > 5){ //문자열s를 int형으로 파싱해서 5보다 크면
et.setText(null); //에디트텍스트 값을 null로 초기화 해버리고
Toast.makeText(getApplicationContext(), "1부터 5까지만 입력해주세요", Toast.LENGTH_LONG).show();
//토스트메세지를 띄운다.
}
}
}
EditText et=(EditText)findViewById(R.id.num); //해당 에디트텍스트 선언 et.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub if(s.toString().length() > 0){ //문자열s의 길이가 0보다 크면 if(Integer.parseInt(s.toString()) > 5){ //문자열s를 int형으로 파싱해서 5보다 크면 et.setText(null); //에디트텍스트 값을 null로 초기화 해버리고 Toast.makeText(getApplicationContext(), "1부터 5까지만 입력해주세요", Toast.LENGTH_LONG).show(); //토스트메세지를 띄운다. } } }
'지식메모 > 안드로이드 Android' 카테고리의 다른 글
안드로이드 이미지버튼으로 버튼 눌림 효과 주기 (0) | 2013.07.17 |
---|---|
안드로이드 뒤로가기 버튼으로 종료하기 (0) | 2013.07.17 |
안드로이드 EditText 입력 글씨 색깔 바꾸기 (0) | 2013.07.09 |
안드로이드 특정파일 미디어 스캐닝 (5) | 2013.07.08 |
안드로이드 화면캡쳐시 bitmap null 값 현상 (24) | 2013.07.07 |