我似乎无法访问替代方法(自定义侦听器)中的值

时间:2018-10-01 11:03:56

标签: android-fragmentactivity

所以我有一个侦听器,该侦听器在搜索视图中侦听来自主活动的键入文本,并将该数据获取到同一主活动的片段。上面的过程运行良好,问题是我似乎无法从重写的侦听器访问片段类的其余部分的数据,因此我可以实际使用它。
 这是列表器实例

private void getSearch(){
    searchView.setOnSearchViewListener(new MaterialSearchView.SearchViewListener() {
        @Override
        public void onSearchViewShown() {
            Log.d(TAG, "onSearchViewShown: searchview running");
        }

        @Override
        public void onSearchViewClosed() {
            logoRL.setVisibility(View.VISIBLE);

            Log.d(TAG, "onSearchViewClosed: 0000");
        }
    });
    searchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {


            Log.d(TAG, "VALUE"+ newText);

            listner.onDataLoaded(newText);

            return true;
        }
    });

这是片段类,在其中我需要看到文本值。数据值是我需要使用的。还声明一个全局变量,然后将其分配给该值不起作用,因为它返回null,我在想它是因为重写的方法以某种方式在片段的oncreatview之前被调用,但是我不确定。任何帮助将不胜感激,在过去的4天中,我一直在努力,我真的很拼命

  @Override
public void onSearchViewSelected(String newText) {

}

@Override
public void onDataLoaded(String data) {
    Log.d(TAG, "query" + data);

}

1 个答案:

答案 0 :(得分:1)

我通过另一种方法解决了问题,将我需要的方法而不是相反的方法解决了