http://alexgorbatchev.com/SyntaxHighlighter/download/ 
위 site에 접속해서 최신 버전을 다운 받는다. (여기서는 5.0을 다운 받았다.)

zip파일이 다운로드 되며 압축파일을 풀어보면 compass, scripts, src, styles, tests 등 폴더들이 보일 것이다.
여기서 scripts 폴더에 들어가면 js파일들이 많이 보이는데 아래 그림과 같이 티스토리에 업로드를 해 준다.


동일한 방법으로 css 폴더 안에 있는 css파일들도 모두 다 업로드 해준다.

그 후에 아래와 같이 HTML/CSS편집 탭을 클릭한다.


소스 코드를 수정할 수 있는 공간이 상하로 2군데 보일 것이다. 우리가 수정할 곳은 위에 skin.html 파일이다.

아래 코드를 소스코드의 맨 아랫쪽에 있는 </body> 바로 위에 복사해서 넣어주자.

<script type="text/javascript" src="./images/shCore.js"></script>

<script type="text/javascript" src="./images/shBrushJava.js"></script>

<link href="./images/shThemeDefault.css" rel="stylesheet" type="text/css" />

<link rel="stylesheet" type="text/css" href="./images/shCoreDefault.css" />

<script type="text/javascript">

     SyntaxHighlighter.all();

</script>

</body>



아래는 소스 복사 후 모습이다.

 

이제 저장한다. 
(붉은 색으로 표시된 곳을 보면 shBrushJava.js 가 보일 것이다. 만약 Java가 아닌 php나 js, html 같은 다른 소스를 작성하고 싶다면  http://alexgorbatchev.com/SyntaxHighlighter/manual/api/autoloader.html 를 참고해서 autoloader라는 메소드를 이용해도 되고 ./images/shBrushPhp.js 같이 사용하고자 하는 언어에 맞게 파일명을 추가해주면 된다.)

이제 블로그 글을 작성해보자.
에디터의 우측 상단의 HTML을 체크해 주어야 한다.


그리고 아래와 같이 Java 소스 코드를 작성해 보자.

<pre class="brush:java">
public class A {

}
</pre> 

이렇게 작성하고 저장해보면 예쁘게 소스코드가  보일 것이다.

출처: http://babtingdev.tistory.com/310

Posted by 90002

<script type="text/javascript"><!--
google_ad_client = "ca-pub-1261983873465389";
/* 글 제일 위에 */
google_ad_slot = "2059623354";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

이번에 안드로이드 스터디를 진행하면서, 과제가 주어졌다. " 모든 작업은 JAVA로만 구현해오세요. "
어차피 대부분 기능은 자바로 구현되니 쉽게 찾아보면서 할수있겠지.... 했는데, 아무리 서적을 뒤져봐도 JAVA 만을 이용한 안드로이드 코드방식에 대해 설명한 책은 없었다.
일부 책에서 약간의 언급을 해줬지만, 순수 JAVA 코드로만 짜는 것은 아주 간단한 프로그램만들때만 쓸 뿐, 큰 프로젝트를 진행하게 되면, 비효율적인 부분들이 많아서 쓰지 않는다. 라고 마무리 짓고 더이상의 설명은 찾아볼수가 없었다.
혹시나 저처럼 자료를 찾아다니는 분들이 있을까하여, 혼자서 구글링을 하며 배운 내용을 짧게나마 포스팅 남겨둡니다.


[ 안드로이드 최초 생성시 Activity_main.xml 의 구성 ]

[위의 Activity_main.xml 코드를 Java로 바꿨을 때 ]

처음보면 왜 서적에서 쓰지말라고하는지, 이해가 갈수도...

그런데 막상 알고보면 별거 없습니다. 천천히 살펴보죠.

RelativeLayout rlRelativeLayout = new RelativeLayout(ctCtex);
xml에서 최초 <RelativeLayout... 으로 설정하고 코드 작성을 시작합니다.
마찬가지로 java 코드에서도 RelativeLayout 을 할당해서 컨텍스트(Context)를 연결해줍니다.



RelativeLayout.LayoutParams lpRelativeLayout_Property = new RelativeLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
);

다음 레이아웃의 속성을 지정해주기 위해, RelativeLayout.LayoutParams 를 사용합니다.
(LinearLayout 을 사용해서 만들었다면. LinearLayout .LayoutParams :: 해당 레이아웃에 맞는 Params를 가져옵니다. )
xml에서 android:layout_width / heigth 를 지정해주는 것처럼 RelativeLayout.LayoutParams 에서 인자로 넓이 / 높이 를 받게 됩니다.


[ 이해 하시리라 믿겠습니다 . . . ㅡ 3 - ]


rlRelativeLayout.setLayoutParams( lpRelativeLayout_Property )
중요! 레이아웃 설정만 해서 끝나는것이 아닙니다. 속성 지정이 끝나면, setLayoutParams 를 이용하여, 설정값을 세팅한 변수를 입력해서, 세팅하고자하는 레이아웃에게 넘겨줘야됩니다.


이제 RelativeLayout 의 크기 설정이 끝났다.
다음 Layout 안에 들어갈 뷰를 생성해보자.

TextView tvText = new TextView(ctCtex);
위에 설명한 레이아웃 생성방식과 동일합니다. new 를 통해서 객체 생성과 동시에 인자로 컨텍스트를 넘겨줍니다.


RelativeLayout.LayoutParams lptvText_Property = new RelativeLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT
);
lptvText_Property.addRule(RelativeLayout.CENTER_VERTICAL);
lptvText_Property.addRule(RelativeLayout.CENTER_HORIZONTAL);

마찬가지로 레이아웃에서 설정하던 방식과 동일합니다. 눈여겨 볼점은 addRule 이라는 함수부분 입니다.

[Reference ]
.addRule(int verb); or .addRule(int verb, int anchor);

기본적으로 LayoutParams의 인자로 바로 설정 가능한 값은 w / h (Width 와 Height) 값 밖에 없습니다.
xml에서 android:layout_centerHorizontal 과 같이 부가적인 설정 변경은 addRule을 통해 이뤄지게 됩니다.


addRule 을 이용한 설정 몇가지만 간략하게 설명해뒀으니 참고하시길...

더보기



tvText.setText(R.string.hello_world);
텍스트 뷰에 텍스트를 입력하는 부분입니다.
인자로 텍스트 저장 부분의 id 를 넘겨줘도 되고, 아래 처럼 직접 써줘도 됩니다.
위 코드에서는 xml과 똑같이 비교하기 위해 아이디를 연결해줬습니다. XML 코드없이 만들기 위해선 직접 입력해줘야겠죠??

tvText.setText("Hello World"); 문자열을 직접 입력해서 넣어줘도 됨.





rlRelativeLayout.addView(tvText);
텍스트 아까전에 속성을 추가해주는 setLayoutParams 처럼 역시 중요한 부분입니다.
사실 간단하면서 당연한부분인데, 중요하다고 하는 점은 쉽게 지나칠수 있다는 점 때문입니다.
xml 에선 < /> 안에 넣으면 자동으로 안에 포함되기때문에 java로 짜다보면 추가해주는 걸 자꾸 깜빡하는 경우가 많습니다.
(저... 저만 그럴수도...)




setContentView(rlRelativeLayout);
xml 코드에서보면 Activity_main.xml 의 주소값을 setContentView의 인자로 집어넣어서 사용합니다.
마찬가지로 위에서 설정된 값을 모두 가지는 레이아웃을 인자로 집어 넣어주게 되면, 최초 안드로이드 예제와 똑같은 결과를 얻을수 있게 됩니다.

http://dark0946.tistory.com/119

<script type="text/javascript"><!--
google_ad_client = "ca-pub-1261983873465389";
/* 글 아래 */
google_ad_slot = "3536356550";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

Posted by 90002
이전버튼 1 이전버튼

블로그 이미지
90002

공지사항

Yesterday1
Today3
Total125,057

최근에 달린 댓글

최근에 받은 트랙백

글 보관함