首页 > 代码库 > Afinal开源框架中FinalActivity的使用

Afinal开源框架中FinalActivity的使用

1. 首先将afinal.jar文件拷贝到项目中的libs目录下

2. 让MainActivity不在继承系统的Activity,而是继承FinalActivity
public class MainActivity extends FinalActivity

3. 把MainActivity中onCreate方法的protected改为public
public void onCreate(Bundle savedInstanceState)

4. 在onCreate方法前面使用注解完成UI绑定和事件绑定
无需使用findViewById和setClickListener
@ViewInject(id = R.id.bt, click = "btClick") Button bt;
@ViewInject(id = R.id.tv) TextView tv;

5.点击事件的方法名要和注解中的方法名一样
事件的返回值必须是void
权限必须是public的
 public void btClick(View v)
 {
        tv.setText("Afinal开源框架中 \nFinalActivity的使用!");
 }


布局文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/bt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="按钮" />

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="25sp" />

</LinearLayout>

MainActivity.java

package com.example.openproject01afinalactivity;

import net.tsz.afinal.FinalActivity;
import net.tsz.afinal.annotation.view.ViewInject;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends FinalActivity
{
	@ViewInject(id = R.id.bt, click = "btClick") Button bt;
	@ViewInject(id = R.id.tv) TextView tv;

	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

	public void btClick(View v)
	{
		tv.setText("Afinal开源框架中 \nFinalActivity的使用!");
	}
}

运行之后的结果