[Android] Chương 1.6 :các control cơ bản TextView, EditText, Button, CheckBox, RadioButton, ImageView.

Người đăng: chisenhungsuutam on Thứ Ba, 1 tháng 4, 2014



Trên giao diện của ứng dụng Android có thể bao gồm các đối tượng điều khiển (controls) khác nhau để làm nhiệm vụ chuyển tải thông tin hoặc tiếp nhận thông tin từ người dùng cuối. Cũng như các ứng dụng thường thấy trên Windows hay Mac, các thành phần giao diện này bao gồm:



   TextView   – Là một đối tượng để hiển thị một dòng chữ, một thông báo, một đề nghị,… dưới dạng văn bản. Nội dung văn bản của đối tượng này thường do người lập trình ứng dụng Android thiết lập trước.
    EditText     – Là một loại thành phần trên giao diện mà người dùng cuối có thể nhập dữ liệu ở dạng văn bản vào.
     Button     – Đối tượng này thường dùng để đại diện cho 1 chức năng nào đó. Khi người dùng nhấn lên nút lệnh chức năng đó sẽ được gọi thực thi. Nếu lập trình viên Android thiết lập rằng ứng với sự kiện nút lệnh đó được nhấn chức năng kia sẽ thực hiện
 ImageView  – Là đối tượng dùng để hiển thị hình ảnh do lập trình viên Android chỉ định.
  CheckBox  – Đối tượng thường dùng để thể hiện trạng thái bật/tắt. Lập trình viên Android thường sử dụng checkbox để cho phép người dùng check (chọn) làm gì đó hay không.
RadioButton – Là loại đối tượng cho phép biểu thị 1 trong 2 trạng thái là đang được chọn hoặc đang không được chọn. Loại đối tượng này thường được sử dụng theo nhóm từ 2 RadioButton trở lên để hỗ trợ việc chỉ được chọn 1 trong 1 tập hợp các RadioButton của cùng 1 nhóm.
 RadioGroup – Là đối tượng quản lý nhiều RadioButton, cho phép chỉ chọn 1 RadioButton  trong nhóm. Lập trình viên Android thường sử dụng loại điều khiến này để cho người dùng chọn một trong số các tùy chọn xác định nào đó.
ToggleButton – Là loại nút thể hiện 2 trạng thái là ấn hoặc không ấn (on/off).
 ProgressBar – Là đối tượng dùng để biểu diễn tiến độ của một công việc nào đó (Tính theo tỉ lệ %).
Để hiểu rõ hơn về các control mời các bạn xem video minh họa.

 Trên chỉ là một số điều khiển được sử dụng phổ biến trong tạo giao diện người dùng Android. Android cũng hỗ trợ một vài điều khiển nâng cao hơn như DateTimePicker, hộp nhập AutoComplete,…
More about

[Android] Chương 1.5 : Các loại Layout

Người đăng: chisenhungsuutam

Layout cơ bản
Mỗi subclass của lớp ViewGroup cung cấp một cách duy nhất để hiện thị các View nằm trong nó. Dưới đây là một vài kiểu layout bạn có thể xây dựng trong nền tảng Android.

1.    Linear Layout
Là layout sắp xếp các View con trong nó lần lượt theo duy nhất một chiều, ngang hoặc dọc tùy theo giá trị của thuộc tính android:orientation. View này sẽ tạo ra một thanh cuộn (scrollbar) nếu chiều dài của cửa sổ vượt quá chiều dài của màn hình.
Ví dụ về một LinearLayout gồm một EditText và một Button:

<?xml version="1.0" encoding="utf-8" ?>

<LinearLayout

    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
      android:orientation="vertical">

    <EditText
        android:id="@+id/edit_text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inputType="text"
        android:text="@string/edit_text" />

     <Button
         android:id="@+id/mybutton"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="right"
         android:text="@string/mybutton" />

   </LinearLayout>



android:orientation – xác định hướng hiển thị của các View con.
android:layout_width, android:layout_height – xác định chiều rộng, chiều cao của View với fill_parent là lấp đầy thành phần cha, wrap_content là vừa đủ nội dung View.
android:layout_gravity – căn vị trí cho View (left, right, center).
Với thiết kế này ta sẽ có kết quả như sau:



2.    Relative Layout

Layout hiển thị các View con với các vị trí tương đối. Vị trí của mỗi View có thể được xác định so với các View khác hoặc với thành phần cha của chúng (thông qua id). Bạn có thể sắp xếp View sang bên phải, bên dưới một View khác, giữa màn hình, v.v.. Để định nghĩa vị trí cho mỗi View bạn sử sụng nhiều thuộc tính có sẵn từ RelativeLayout.LayoutParams.
Ta tham khảo một vài thuộc tính:
android:layout_alignParentTop
Nếu “true”, cạnh trên của View sẽ trùng với cạnh trên của thành phần cha.
android:layout_centerVertical
Nếu “true”, View này sẽ được xếp vào giữa theo chiều dọc của thành phần cha.
android:layout_below
View sẽ nằm dưới một view khác, và xác định view đó qua id.
android:layout_toRightOf
View sẽ nẳm bên phải so với một View khác.
Ta đến với ví dụ RelativeLayout sử dụng 3 EditText và 1 Button:


<?xml version="1.0"encoding="utf-8" ?>

<RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:paddingLeft="16dp"
      android:paddingRight="16dp">

    <EditText
        android:id="@+id/edit_text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="@string/edit_text"/>

    <EditText
        android:id="@+id/edit_text1"
        android:layout_width="90dp"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@id/edit_text"
        android:hint="@string/edit_text1"
        android:text="@string/edit_text1" />

    <EditText
        android:id="@+id/edit_text2"
        android:layout_below="@id/edit_text"
        android:layout_width="150dp"
        android:layout_alignParentRight="true"
        android:layout_height="wrap_content"
        android:hint="@string/edit_text2"/>

    <Button
        android:id="@+id/button"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:text="@string/mybutton"/>

</RelativeLayout>

Kết quả ta sẽ có giao diện như sau:


3.    Table Layout

TableLayout thể hiện các View dưới dạng lưới. Bạn có sử dụng thẻ <TableRow> để tạo ra các hàng, các cột trong layout. Các ô được tạo có thể chứa các View và layout khác.
Ví dụ về một TableLayout gồm hai dòng, trông mỗi dòng có hai Button:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?xml version="1.0" encoding="utf-8"?>
     
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TableRow>
        <Button
            android:text="@string/left"/>
        <Button
            android:layout_gravity="right"
            android:text="@string/right" />

    </TableRow>

    <TableRow>
        <Button android:text="@string/left" />
        <Button
            android:layout_gravity="right"
            android:text="@string/right"/>
    </TableRow>

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </TableRow>

    <TableRow
        android:id="@+id/tableRow2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </TableRow>

    <TableRow
        android:id="@+id/tableRow3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </TableRow>

    <TableRow
        android:id="@+id/tableRow4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </TableRow>

</TableLayout>

Kết quả sẽ như sau:


FrameLayout: Là đối tượng Layout đơn giản nhất. FrameLayout có thể chứa nhiều View, và các View này sẽ được sắp chồng lên nhau. Mỗi khi thêm một View mới, nó sẽ đặt các View này lên góc trên bên trái của giao diện. Nếu các View có cùng kích thước thì đối tượng nằm dưới sẽ bị che khuất. Do đó, thông thường Frame Layout chỉ chứa một View bởi vì nếu FrameLayout chứa nhiều View thì việc tổ chức các View theo tỉ lệ tương thích với kích thước màn hình để các View không chồng lên, che khuất lẫn nhau là rất khó khăn.
AbsoluteLayout: các điều khiển sẽ nằm ở một vị trí tuyệt đối do lập trình viên xác định. Tuy nhiên so với các Layout trước thì nó có hạn chế. Nếu các đối tượng được sắp xếp tại một vị trí tuyệt đối trên màn hình thì nó sẽ không tự động điều chỉnh để tương thích với độ phân giải màn hình và định hướng vị tri.
Trên đây là đôi chút giới thiệu về các layout cơ bản, kết hợp các layout với nhau bạn có thể tạo được một giao diện vừa ý.

More about

MẤT TRỘM DIỀU

Người đăng: chisenhungsuutam



 














Hôm qua có thả một đôi diều
Chẳng hiểu vì sao bỗng mất tiêu.
Dây níu to bền không thể đứt.
Cọc neo bự chắc chẳng hề xiêu.

More about

GIAO MÙA

Người đăng: chisenhungsuutam



















GIAO MÙA

Hoa xoan mãn nguyện rụng bên hè
Gạo đỏ thưa dần đốm lửa quê.
Cánh bưởi thơm nồng trao kẻ lại.

Bông chanh tím phớt gửi người về.
Xuân tàn phượng vĩ đang hò hẹn.
Hạ tới bằng lăng đã ước thề.
Cảnh sắc giao mùa bao ý mộng.
Đời trần nếm trải bấy nhiêu khê ?

01.04.2014

Cường Nguyễn (Caocongkien)

 

HỒI TƯỞNG

(Bài họa)
Vàng nắng dần buông báo hiệu hè
Cánh diều thấp thoáng giữa làng quê
Trời xanh lộng ngát vờn mơ đến
Phượng đỏ ùa thơm rải mộng về
Bảng lảng chuồn lay câu ngóng đợi
Râm ran ve gọi chữ mong thề
Ngoái thương một thuở trời hy vọng
Liễu rũ nghiêng mình dõi tiểu khê.

Tác giả: HANSY

HÈ VỀ

(Bài họa)
Nắng nóng lan nhanh đã đến hè
Sông khô suối cạn khắp làng quê
Chim trời khát giọng mong mưa lại
Cá nước trầy vây ước lạnh về
Gió thổi hanh nồng...ong lỡ hẹn
Mây bay bảng lãng... bướm quên thề
Loài nào cũng bực trông tìm chỗ
Bóng mát hay là ngọn tiểu khê !!!

Tác giả: Tòng Trần.
Nguồn: Thơ văn Caocongkien Facebook
More about

Phím Tắt Cần Thiết Visual Studio

Người đăng: chisenhungsuutam


Trong lúc code các bạn cũng nên sử dụng các phím tắt sau để tăng khả năng linh hoạt .

Ctrl + K + C: vô hiệu hóa một vùng code thành dạng comment


Ctrl + K + U:  Hoàn lại lệnh trên
- Ở các phiên bản thấp hơn có lẻ sẽ khác một chút. Có thể nhìn lên menu và kick vào:
Edit => Avanced => Comment Slection

Phím thứ 2 là Format code cho ngay hàng thẳng lối. Đôi khi bạn copy code dán vào hoặc lúc gõ ẩu thì nên dùng phím này để Visual tự động đều chỉnh. Trông nó sẽ chuyên nghiệp hơn :D
Edit => Avanced => Format Document
Ctrl + K + D : Format tất cả

Edit => Avanced => Format Selection
Ctrl + K + F: Format vùng bạn chọn


Xóa  một vài mã trong đoạn code nhanh, bạn đang gõ một đoạn code, lại lấy thiếu một vài chữ ?
Hãy đặt con trỏ tại vị trí cần đặt:
Nhấn Backspace để xóa về bên trái
Nhấn Delete để xóa về bên phải
Có thể bạn thấy thường quá, nhưng lúc làm việc mới thấy nó linh hoạt như thế nào :)

Đặt bookmark ! Việc này cũng không kém phần quan trọng, khi lương line code quá nhiều thì đặt bookmark ở những đoạn mã cần tới lui thường xuyên sẽ rất tiện lợi trong lúc làm việc

Đối với VS 2012: Đặt con trỏ tại dòng cần bookmark
Nhấn Ctrl + K + K : Tạo một BM tại điểm con trỏ chuột
Nhấn Ctrl + K +N : Nhảy tới BM tiếp
Nhấn Ctrl + K +P : Nhảy tới BM sau

Hiển thị gợi ý cú pháp
Đặt con trỏ tại mã code cần gợi ý:

Nhấn Ctrl + Space : VS sẽ hiển thị lại lần nữa các gợi ý cú pháp liên quan.
Trong VS lúc bạn gõ code tới đâu thì đều có gợi ý code hiện ra. Cộng thêm việc cài các plugin hỗ trợ thì việc phải nhớ hết code không còn đáng lo ngại. Bạn hãy dành thời gian nhớ hết code

Ctrl + K + \ : Xóa tất cả khoảng trống trong dòng code được ta bôi đen ! :))
Ctrl + Shift + L : Xóa dòng hiện tại (tại điểm con trỏ chuột). Xóa cả dòng rất nhanh không cần bôi đen

Shift + Alt + T : Đổi chỗ dòng tại vị trí chuột với dòng dưới nó. Nếu bạn cài Resharp hoặc các plugin khác sẽ xung đột phím tắt, thì khí nhấn như vậy nó sẽ hỏi bạn dùng cho bên nào ? chọn VS nhé

Ctrl + U : Biến các ký tự được bôi đen thanh chữ thường.
Ctrl + Shift + U : Biến các ký tự thường thành chữ in HOA.

PageUp       : Cuộn trang code lên
PageDown  : Cuộn trang code xuống

Shift + F12 : Tìm reference của mã tại vị trí con trỏ  (Nếu có). Bạn mà để con trỏ tại mã thường thì không hiện gì đâu nhé

Và ta có thể thu gọn code bằng cặp lệnh mở đóng sau:

 #region  abcxyz
......
.....
your code
.......
#endregion







More about

Hướng dẫn hiển thị số dòng code trong visual studio 2012

Người đăng: chisenhungsuutam

Để hiển thị số dòng trong Visual studio như hình trên bạn làm như sau:
- Vào menu Tools > Options
- Mở các node: Text Editor > All Languages > General
- Chọn vào Line number


Video hướng dẫn




Thư giản :


Một cậu bé đi vào bể bơi dành cho phụ nữ, mọi người la hét ôm quần áo chạy.

Cậu bé ngạc nhiên:

- Sao thế? Mọi người chưa từng thấy một cậu bé như tôi sao?!


o O o


Sau khi đọc cho chồng nghe bài báo nói về sự đãng trí, bà vợ nói:

- Thật vô lý khi nói đàn bà đãng trí trước đàn ông.

Ông chồng chậm rãi trả lời:

- Họ có lý đấy, bà đã đọc bài báo này cho tôi nghe 3 lần rồi.

o O o


Có một con muỗi vừa bay ra khỏi ký túc xá, vòi nó bị gãy trông thật thảm hại. Con muỗi khác thấy thế liền hỏi:

- Cậu bị sao thế?

- Tớ tưởng là cái chân, ai dè lại là cái điếu cày!!!

o O o


Một người đàn ông say ngất ngư đang đứng ở ga xe lửa, ông ta gọi một chiếc taxi nhờ chở ông ta đến ga xe lửa. Anh tài xế ngạc nhiên:

- Thưa ông, đây là ga xe lửa mà.

- Ồ, thế à - ông ta móc tiền ra đưa cho tài xế và nói - Bữa sau anh nhớ đi chậm một tí lại nhé.


More about

Thủ thuật tăng Follow trên Twitter

Người đăng: chisenhungsuutam

Twitter là mạng xã hội được nhiều chính trị gia, doanh nhân, markter tham gia để chia sẻ thông tin, seo, bán hàng và xây dựng thương hiệu cá nhân, thương hiệu sản phẩm và doanh nghiệp. Những vấn đề đối với những người mới tham gia là làm sao để có nhiều người theo dõi để chia sẻ thông tin tới những người đó. 

Để thu hút được nhiều người theo dõi (follow) thì bạn phải có điều gì hấp dẫn để họ muốn theo dõi những thông tin cập nhật của bạn. Dựa trên những kinh nghiệm của bản thân, mình chia sẻ một số thủ thuật chính sau: 

1. Trang trí thật đẹp cho ngôi nhà của bạn

- Cũng giống như facebook, Twitter cũng có timeline và ảnh profile. Hãy tìm hoặc tự tay thiết kế một timeline thật đẹp, hấp dẫn theo phong cách riêng của bạn. 
- Tương tự, ảnh profile cũng vậy, hãy đưa một tấm hình đẹp nhất của bạn lên, đừng để hình ảnh con vật, hoa hay cái gì khác lên đó nhé. Không ai muốn theo dõi một người mà không có nổi một tấm hình đáng tin cậy được. 
- Việc tiếp theo là hãy điền thông tin về bạn càng chi tiết càng tốt (Tên đầy đủ, công việc, nơi ở, năm sinh, yêu thích,......)
thủ thuật tăng follow trên twitter

2. Tích cực Follow người khác

- Để có được follow từ người khác, thì tốt nhất bạn nên chủ động follow người đó trước. 
Với cách này mỗi ngày mình chủ động follow khoảng 300 người và nhận được khoảng 20 follow lại. Một kết quả cũng khá tốt. 
- Bạn vào trang cá nhân của người khác => follow/following để follow tất cả những người trong đó.
thủ thuật tăng follow trên twitter

3. Chia sẻ hình ảnh thật nhiều

- Thay vì chia sẻ những đường link từ website lên đó, bạn hãy vào trang cá nhân của mình để chia sẻ những status hay kèm theo những hình ảnh hấp dẫn. 
- Số lượng follow của mình đã tăng lên nhiều khi làm theo cách này. Nói chung là để có được hiệu quả thì bạn phải thực sự tham gia và chia sẻ thông tin giá trị thì mới nhận được sự quan tâm của người khác. 
thủ thuật tăng follow trên twitter
- Mỗi ngày bạn nên chia sẻ ít nhất là 2 bài đăng hay và có kèm theo hình ảnh. Để có được 2 bài đăng  một ngày thì tốt nhất bạn nên có kế hoạch chuẩn bị sẵn các bài đăng. Đừng để đến ngày đó mới nghĩ xem nên đăng gì. 

4. Thích và comment tốt cho bạn bè

Ai cũng thích được khen.Với những bài đăng hay bạn nên Favorite và comment tích cực cho họ. Bạn làm như vậy nhiều lần thì nhất định họ sẽ quan tâm và theo dõi lại bạn. 
Kết luận: Làm nhiều hay ít không bằng làm thường xuyên. Vì vậy, nguyên tắc là hãy đăng bài hàng ngày và comment tốt cho người khác. 
More about