[Android] Hướng dẫn sử dụng Annotation để khai báo Layout

Đăng bởi: Admin | Lượt xem: 1375 | Chuyên mục: Android

Trong bài viết này mình sẽ hướng dẫn các bạn cách để khai báo layout một cách đơn giản, nhanh chóng bằng cả Java và Kotlin, thay thế cho việc setContentView trong hàm onCreate()


Làm sao để khai báo layout một cách đơn giản, nhanh chóng thế này

Với Java:

@LayoutId(R.layout.activity_main)
public class MainActivity extends BaseActivity {
}

hay Kotlin:

@LayoutId(R.layout.activity_main)
class MainActivity : BaseActivity() {
}

Đơn giản chỉ gồm 2 bước như sau:

1. Khởi tạo annotation

Java:

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface LayoutId { int value();}

Kotlin:

@Target(AnnotationTarget.CLASS, AnnotationTarget.FILE)
@Retention(AnnotationRetention.RUNTIME)
annotation class LayoutId(val value: Int)

2. Định nghĩa annotation ở BaseActivity

Java:

public abstract class BaseActivity extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        LayoutId layoutId = getClass().getAnnotation(LayoutId.class);
        if (layoutId != null) {
            int contentViewId = layoutId.value();
            setContentView(contentViewId);
        }
    }
}

Kotlin:

abstract class BaseActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val layoutId = javaClass.getAnnotation(LayoutId::class.java)
        val contentViewId = layoutId?.value
        setContentView(contentViewId!!)
    }
}

Thế là xong! Cám ơn bạn đã đọc bài viết.

Chào thân ái và quyết thắng!

vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!



Khóa học liên quan

Khóa học: Android

Học Kotlin cơ bản
Số bài học:
Lượt xem: 17070
Đăng bởi: Admin
Chuyên mục: Android

Học lập trình Flutter cơ bản
Số bài học:
Lượt xem: 55102
Đăng bởi: Admin
Chuyên mục: Android

Lập trình Android cơ bản
Số bài học:
Lượt xem: 22181
Đăng bởi: Admin
Chuyên mục: Android