将方法的可见性限制为除了相应布局之外的所有内容

时间:2014-02-16 08:13:14

标签: java android xml

我希望我的班级saveTeam()中的方法FormTeamsActivity.java仅对其容器和相应的布局文件formteam.xml.

可见

FormTeamsActivity.java:

public class FormTeamActivity extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        //...
    }

    public void saveTeam() { //I only want this visible to formTeam.xml
        /*
        Capture user defined parameters and store them in DB
        */
        finish(); //Conclude activity
    }
}

我无法将其设为私有,因为我无法调用formTeam.xml:

   <Button
    ...
    android:id="@+id/button_formTeam"
    ...
    android:onClick="saveTeam"/><!-- I would like to call the method here -->

我发现的唯一工作是在类中编写自己的actionListener,但我希望能够解决这个问题,以避免在我写的Activity中有大量的监听器。

1 个答案:

答案 0 :(得分:3)

如果您想使用android:onClick,则必须公开。来自Android docs

  

此名称必须对应于只接受View类型的一个参数的公共方法。例如,如果指定android:onClick =“sayHello”,则必须声明上下文的公共void sayHello(View v)方法(通常是您的Activity)。