이 블로그 검색

2011년 7월 18일 월요일

plist 파일에서 데이터 읽어오기

-(void)viewDidLoad{

 NSString *path = [[NSBundle mainBundle] pathForResource:@"plist파일이름" ofType:@"plist"];

NSMutableArray *tmpArray = [NSMutableArray alloc]inithWithContentsofFile:path];

}


2011년 7월 13일 수요일

안드로이드 다이알로그 완전 정복

http://mainia.tistory.com/555

요기에 아주 훌륭하게 나와있음.

하지만, 지나치게 복잡함..그리고 실행하면 잘 안됨.. ㅡㅡ;
아래 초간단 AlertDialog. 이거 하나면 되겠소.


   AlertDialog.Builder alert = new AlertDialog.Builder(Popup_VisitCustomerList.this);
    alert.setMessage("고객이 등록되지 않았습니다. 먼저 고객을 등록해 주세요.");
    alert.setPositiveButton("OK", new DialogInterface.OnClickListener()
    {
     public void onClick(DialogInterface dialog, int which)
     {
      dialog.dismiss();
     }
    }).show();

2011년 7월 12일 화요일

Shared Preference

public SharedPreferences pref;                       <-- Shared preference 형 객체
public SharedPreferences.Editor edit;            <-- Shared preference.Editor 형 객체


pref = getSharedPreferences("language_setting", Activity.MODE_PRIVATE);  <--  language_setting.xml  파일에 저장됨.



edit = pref.edit();                            <-- preference 형 객체에 Editor 형 객체를 연결시킨다.
                

edit.putString("language", Define.KOREAN);      <-- 쓰기
edit.commit();                                                           <-- 커밋


Define.LANGUAGE = pref.getString("language", Define.KOREAN);    <-- 읽기



2011년 7월 10일 일요일

다이알로그와 같은 액티비티 만들기

이렇게 액티비티를 메니페스트나 코드에서(둘 중에 하나만 하면 됨) 설정을 해 주면 마치 다이알로그 창과 같이 테두리가 없이 투명하게 액티비티를 만들 수 있다.

<메니페스트에서>
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"

<코드에서>
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

물론, layout 파일(xml)을 만들 때,
당연히 팝업 효과가 나오게 할려면 보이려는 부분은  background를 주고 주변은 alpha 값을 주어서 투명 처리하게 해야 된다.

알파 값은 간단히 xml에서 줄려면 background 에서 #칼라 값을 주면 된다.
원래 칼라 값이 8자리인데, 앞의 2자리가 알파값이다.
예) android:background="#c9ffffff"  ==> 앞의 알파값 c9을 주어서 배경이 뿌옇게 나온다.



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/full_layout"
xmlns:android="http://schemas.android.com/apk/res/android" android:background="#c9ffffff"
android:gravity="center">
<LinearLayout android:layout_width="170dip"
android:layout_height="240dip" android:background="@drawable/com_list_bg"
android:orientation="vertical">
<TextView android:text="할일 선택" android:id="@+id/textView1"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" style="@style/color222222_15" android:layout_marginTop="11dip"></TextView>
<ListView android:layout_height="wrap_content" android:id="@+id/listView1"
android:layout_width="match_parent" android:layout_marginLeft="3dip" android:layout_marginRight="3dip" android:layout_marginTop="4.5dip"></ListView>
</LinearLayout>

</LinearLayout>

2011년 7월 5일 화요일

layout:gravity 에서 마진을 주면 해당 그래비티가 먹지 않는다.

예컨데
 layout:gravity = "vertical center" 를 주었는데,
 layout:marginTop = "5dip" 혹은 layout:marginBottom = "10dip" 등을 주면 vertical center 가 제대로 먹지 않는다.
 마찬가지로 layout:gravity = "horizontal center" 를 주고서
 layout:marginRight = "5dip" 혹은 layout:marginLeft = "10dip" 등을 주면 먹지 않음..

2011년 6월 2일 목요일

Exception Handling

모바일 어플리케이션은
3G 접속 등 네트워크 접속이 불안할 때, Server의 Data를 못 가져와서 프로그램이 다운되는 경우가 자주 있다. 이럴 때는 사실상 Exception 처리로서 해결해야한다.

예외 처리의 이유... 어플은 어떻케든 죽지만 않으면 된다.

* 예외 처리  -> try, catch
1. 예외 후보자를 try로 감싼다.
2. 기어이 예외를 내면 catch에서 처리한다.
3. "Exception e" 모든 Exception 객체의 왕언니. 다 받아준다. 따라서 맨 마지막 catch 문에
4. catch 문에서 ExceptionHandler 객체를 생성해 처리해 줄 수 도 있다.