본문 바로가기

전체 글380

objective c 프로그램 objective c 프로그램 모든 클래스에서 객체는 id라는 특별한 형태로 표현된다. id obj; 메시지 표현식 어떤 객체 obj에 메세지 msg를 보내려면 아래과 같이 작성한다. [obj msg] 참고로 메시지 표현식은 리시버 객체(obj)가 그 메시지를 처리한 결과값을 리턴한다. 메시지에 인수가 있으면 메시지 키워드 끝에 : 를 붙여서 인수가 있음을 나타낸다. [printInfo setLeftMargin: 60.0]; 인수가 두개 이상 있을때는 콜론을 붙이고 다른 키워드를 추가한다. [printInfo setLeftMargin: 60.0 setRight: 90.0]; 객체에게 일을 시킬려면? id형 변수를 선언하는 것만으로는 변수에 객체가 저장되지 않는다. 객체에게 일을 시킬려면 우선 클래스에서 .. 2020. 12. 25.
objective c 객체 개념 객체 개념 객체의 구성은? 객체는 속성과 메시지로 구성되어 있다. 메시지를 받으면 그에 따른 처리를 한다. -자동차 객체의 속성: 칼러, 속도 -자동차 객체의 메시지: 앞으로 달린다. 후진한다. 드래프트한다. 등 객체의 특성은? 사람이 '물건'으로 다른 것과 구별해서 인식할 수 있음 속성이 있음 다른 객체에 메시지를 보낼 수 있음 메시지를 받아 그에따른 처리를 함 메시지 처리는 객체의 메서드로 이루어짐 객체의 속성? 객체의 속성은 무엇을 나타내는가? 객체는 다른 객체를 참조해서 속성을 나타낸다. 속성을 나타내는 다른 객체의 참조 (포인터)를 저장한 장소가 인스턴스 변수이다. 또는 그냥 변수라고도 하고, 변수에서 참조할 수 있는 객체가 없는 상태를 널로 표현하기도 한다. 객체를 연결하려면 어떤 객체 변수에.. 2020. 12. 25.
썸머노트 기본 예제 썸머노트 기본 예제 이번포스팅에서는 아래와 같은 썸머노트 라이브러리를 이용해서 텍스트에디터를 셋팅하는 법을 알아보자. 1.라이브러리 참조 썸머노트는 부트스트랩을 기반으로 디자인되어있기 때문에, 부트스트랩 관련 css, js파일과 함께 썸머노트 js, css 파일을 같이 참조해준다. 2.썸머노트 불러오기 아래 코드를 이용해서 썸머노트를 불러오고. 작성 버튼을 누르면 썸머노트에 작성된 글이 콘솔로그에 찍히도록 로직을 작성한다. 게시판 설명을 간단하게 적어주세요. 작성 3.스크립트 작성 먼저 썸머노트에 값을 넣어주는 로직을 작성한다. 예를 들어 db에서 썸머노트에서 작성한 데이터를 불러왔다고 가정하고, 한번 썸머노트에 뿌려줘 보았다. 참고로 썸머노트에 글을 넣어줄때는 썸머노트를 초기화 하기 전에 값을 넣어줘야.. 2020. 12. 23.
스프링 프로젝트 개발할때 기본 화면구성 스프링 프로젝트 개발할때 기본 화면구성 스프링 프로젝트 개발할때마다 사용하는 기본 화면 구성이 있다. 헤더부분과 메뉴부분, 풋터부분을 나누는 작업이다. 개발 할때마다 자주 사용하게 될 것 같아서 정리해보았다. 디자인은 bootstrap을 사용했고, 화면은 jsp를 이용해서 구성했다. 상세화면 리스트화면 컨트롤러 특정 URL을 호출했을때 해당 페이지를 넘겨 주는 Controller 를 아래와 같이 작성한다. //상세보기 화면 @RequestMapping(value = "/bookDetail", method = RequestMethod.GET) public String bookDetail(Locale locale , HttpServletRequest request, Model model) { System.o.. 2020. 12. 22.
autolayout - ScrollView 정리 autolayout - ScrollView 정리 세로로 길게 작업할때는 먼저 ViewController의 세로 길이를 높인다음 작업하는게 좋다. 여러객체를 스크롤 뷰로 작업할때 먼저 아래처럼 뷰로 한번 감싼후, 그 다음 스크롤 뷰로 감싸는게 작업하는데 편하다. 그리고 생성된 뷰를 클릭 후 ScrollView를 클릭해주면 뷰를 감싼 ScrollView가 생성이 된다. 스크롤뷰 제약조건은 위 아래 좌우 0으로 준다. 텍스트필드는 위 아래 좌우 20으로 준다. 뷰의 제약조건은 위아래 모두 0으로 준다. 마지막으로 뷰의 넓이만 supurview와 동일하게 맞춰준다. (왼쪽 네비게이션 메뉴에서 뷰 우클릭 후 슈퍼뷰 드래그 -> 넓이 같게 체크). 아래와 같은 화면이 안나오면 scrollview 클릭해서 인스펙터에.. 2020. 12. 19.
autolayout - priority 정리 autolayout - priority 정리 priority를 번역하면 우선순위라는 뜻이다. priority는 오브젝트가 하나일때는 별로 중요하지 않다. 오브젝트가 두개이거나 하나 이상일때 priority 기능이 사용이 된다. 오브젝트가 두개일때 priority의 우선순위가 높은 오브젝트는 자신의 크기를 먼저 갖고, 고정이 된다. 반대로 priority가 상대 오브젝트 보다 낮은 오브젝트는 크기가 밀리거나, 유동적으로 변할 수 있다. 1.문제상황 라벨 두개를 만들었다. 첫번째 라벨의 제약조건을 위, 좌, 우, 20씩 주었다. 우측 라벨의 제약조건을 우 20으로 주었다. 참고로 라벨은 크기를 지정하지 않아도 오류가 안난다. 텍스트의 크기가 곧 라벨의 크기이기 때문이다. 크기를 확인 할 수 있는 컨텐츠를 갖.. 2020. 12. 19.
autolayout - multiplier 정리 autolayout - multiplier 정리 xcode의 autolayout에는 multiplier 속성이 있다. multiplier를 한글로 하면 승수다. 단순하게 이해한다면 multiplier는 xcode에서 곱하기 라고 생각하면된다. 무엇에 대한 곱하기 일까? 바로 뷰의 y 좌표와 x좌표에 대한 곱하기이다. 그럼 예제로 뷰를 하나 만들어서 뷰의 탑 제약조건에 multiplier를 2로 줘보자. 1.multiplier 개념 결과는? 아무런 반응이 없다. 이유는 탑 제약조건의 multiplier는 뷰의 y좌표에 곱하기를 한다고 했는데 현재 뷰의 y좌표는 0이기 때문이다. safe area가 존재하는 iphone 11 같은 경우는 기본 y좌표가 44로 설정되어 있다. 그래서 탑 제약조건의 multip.. 2020. 12. 19.
autolayout - align 정리 autolayout - align 정리 이번 포스팅에서는 ios autolayout align에 대해서 알아보자. align은 정렬이라는 뜻이다. 여러개의 뷰가 있을때 정렬 기능으로 간단하게 뷰의 위치를 정렬 시킬 수 있다. 아래 그림처럼 정렬기능은 막대기 모양처럼 생긴 아이콘을 클릭하면 된다. 뷰가 하나일때는 부모뷰 기준으로 가운데 정렬하는 기능만 활성화 된다. 뷰가 여러개일때는 아래 그럼처럼 특정 뷰를 기준으로 여러 뷰의 정렬을 설정하는 속성이 활성화가 된다. 보라색 뷰를 녹색 뷰 모서리 부분에 정렬 시키고 싶으면 어떻게 해야 할까? 현재 초록색 뷰는 탑, 리딩(왼쪽) 제약 조건이 각각 20, 20으로 설정되어 있고, 높이, 넓이를 300, 300으로 주었다. 보라색 뷰는 높이 넓이만 100, 100.. 2020. 12. 18.
윤성여 윤성여 종종 저녁먹을때 다큐멘터리를 본다. 어제도 저녁먹다가 다큐멘터리를 틀었다. 특정 다큐 주제를 좋아하는 것은 아니다. 단지 다큐라는 장르가 좋아서 가끔씩 본다. 어제는 윤성여라는 사람이름이 다큐 제목으로 나왔다. 보통 사람이름으로 다큐 제목이 나오는 경우는 거의 못봤다. 어떤 사람인지 궁금했다. 불쌍한 사람인가? 어려운 사람인가? 겉으로 보기엔 말이 어눌하고, 다리에는 장애가 있어 보였다. 다큐 중반으로 가니깐 이 사람이 쓴 억울한 누명을 알게됐다. 옛날에 화성에서 살인사건이 있었다. 범인은 누군지 밝혀지지 않았다. 화성 8차 사건. 이때 경찰과 검찰은 윤성여를 용의자로 지목하고 구속 했다. 그 후 감옥에서 20년 살다가 모범 수로 풀려났다. 밥먹다가 나도 모르게 울컥했다. 윤성여의 삶이 너무나 기.. 2020. 12. 18.