如何在不重新定义字符串的情况下委托字符串,在另一个类中?

时间:2013-09-11 13:41:01

标签: android

我对android很新,并试图找出委托。解释一下。 我有一个搜索框,我在FragmentA类中定义了一个搜索文本字符串,如下所示:

protected EditText mSearchView;

现在,我有另一个类FragmentB扩展了Fragment A,它在一个方法中使用相同的方法如下:

private void displayQuotes(final String searchAutoSuggestTitle, final String searchAutoSuggestSubTitle, final String searchAutoSuggestSymbol) {
        killLastSearchAutoSuggestTask();

        String text = mSearchView.getText().toString().toLowerCase() + " " + mSearchView.getText().toString().toLowerCase();

        if(searchAutoSuggestSymbol.toLowerCase().contains(mSearchView.getText().toString().toLowerCase())){
        QuotesFragmentWebView.newInstanceForSearch(getFragmentManager(), searchAutoSuggestSymbol, null);
        }
        else if(!searchAutoSuggestSymbol.toLowerCase().contains(text)){//mSearchView.getText().toString()))&&""&&(searchAutoSuggestSymbol.contains(mSearchView.getText().toString()))){
            AnswersWebViewFragment.newInstanceForSearch(getFragmentManager(), searchAutoSuggestSymbol, null);

        } else {

        }
        hideSearchView();
    }

现在,为输入的文本检索mSearchView文本的值。现在我有另一个类Fragment C,它扩展了Fragment实现Onclicklistener,mainactivity,没有特定的类。我在那里有一个URL,我定义为:

public final static String search_1_result = "https://mobile13.cp.com/fwd/results/answers/service/v1/?q="+mSearchView.getText().toString()+"%20revenue&ui.theme=novadark&uuid=PADACT-002";

但是,我想知道如何让它识别mSearchView.getText()。toString()值(包括识别它作为错误抛出的mSearchView,因为它没有在该特定类中定义)。另外如何在片段B中进行搜索的类型值,以便在上面给出的url中使用?

谢谢! 布莱恩

1 个答案:

答案 0 :(得分:0)

参考此主题: How do I use the parameter defined in another class? 我有一个类似的问题, 你只需要定义一个函数说

    -public fragment(or your class can be your view class) extends whatever{
        -public void thisfunction(){
        //code to add
        }

}

在你需要的类中调用它,并在你想要委托的主类中定义函数,并在引用片段类的函数内调用它。(与我给你的类引用完全相同),不要忘记在示例onrawerclosedlistener中获取具有实现功能的必需侦听器。