0

我创建了一个扩展类TextView

public class EmployeeTextView extends TextView {

    private String employeeId;

    private String employeeName;

    public EmployeeTextView( Context context, String employeeId,
            String employeeName ) {
        super( context );
        this.employeeId = employeeId;
        this.employeeName = employeeName;
    }

    public String getEmployeeId( ) {
        return employeeId;
    }

    public void setEmployeeId( String employeeId ) {
        this.employeeId = employeeId;
    }

    public String getEmployeeName( ) {
        return employeeName;
    }

    public void setEmployeeName( String employeeName ) {
        this.employeeName = employeeName;
    }

    @Override
    public CharSequence getText( ) {
        return this.employeeId + " - " + this.employeeName;
    }

}

我将如何在我的主要活动中实现这个类?我必须以EmployeeTextView编程方式创建这些“”吗?或者有没有办法创建一个自定义小部件并通过 XML 添加它,然后调用我的 getter 和 setter?

我需要这个自定义 TextView 的原因是我需要单独获取employeeId 或employeeName。

谢谢

4

3 回答 3

3

在 layout.xml 添加如下

<your_package_name.EmployeeTextView 
      android:id="@+id/view_id"
      other attributes
/>

这里your_package_name是EmployeeTextView类的src包

在课堂上使用

EmployeeTextView v = (EmployeeTextView ) findViewById(R.id.view_id);
于 2013-03-14T13:59:19.793 回答
1

在您的 layout.xml 中使用完整的限定名称。

在你的情况下:

<com.example.EmployeeTextView ... />

于 2013-03-14T13:59:51.317 回答
1

像通常使用 TextView 一样使用它,也在 XML 中。只需在其前面添加您的包名称即可。

于 2013-03-14T14:00:45.053 回答