无法看到片段内定义的公共方法

时间:2018-03-17 11:16:53

标签: android

我在片段中定义了一个公共方法来设置内部变量的值。但我无法访问(看不到)片段外的方法(例如来自Main活动类)。我可能错过了一些东西,但无法弄清楚。感谢每一位帮助。

我的片段代码如下(为简洁起见,我删除了导入包):

package com.example.lenovo.apptel_book;


public class my_add_fragment extends Fragment {

int temp_data;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    return inflater.inflate(R.layout.fragment_my_add_fragment, container, false);
}

public void set_data(int x)
{
    temp_data = x;
}

}

我想在单击给定按钮时访问“set_data”方法。在onClick方法中,我使用下面的代码:

public void main_Add_Click(View v)
{
    Fragment fr = new my_add_fragment();

    // need to access fr.set_data() but cannot see the method!

}

1 个答案:

答案 0 :(得分:1)

使用此

my_add_fragment fr = new my_add_fragment();

而不是这个

Fragment fr = new my_add_fragment();