android pass bundle with search

后端 未结 5 1847
南笙
南笙 2020-12-06 13:02

Hello i am using android 3.0 search widget(not the search mode), the problem is i need to pass some parameters along with the search word.

Android i

5条回答
  •  夕颜
    夕颜 (楼主)
    2020-12-06 13:31

    pass data with bundle in Search Widget:

    layout/main.xml :

    
        
        

    layout/searchable.xml :

    
    
    

    values/strings.xml :

    
    
    Hello World, SearchTest!
    Searchtest
    Search Test
    1234
    234
    544545
    
    

    AndroidManifest.xml :

    
            
                
                    
    
                    
                
                
            
    
             
                
                    
                    
                
                
                    
                    
                
                
            
        
    

    ResultActivty.java:

    package org.imranandroid.TestSearchexmp;
    import android.app.Activity;
    import android.app.SearchManager;
    import android.os.Bundle;
    import android.widget.Toast;
    
    public class ResultActivty extends Activity{
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            Bundle bundled= getIntent().getBundleExtra(SearchManager.APP_DATA);
            Long ttdata=bundled.getLong("listino_id");
            Toast.makeText(this, ttdata.toString(), Toast.LENGTH_SHORT).show();
        }
    }
    

    SearchWidgetExampleTest.java :

    package org.imranandroid.TestSearchexmp;
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class SearchWidgetExampleTest extends Activity {
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            Button button1 = (Button) findViewById(R.id.button);
            button1.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    onSearchRequested();
                }
            });
        }
        @Override
        public boolean onSearchRequested() {
            Bundle appDataBundle = new Bundle();
            appDataBundle.putLong("listino_id", 4434724724L);
            startSearch("imran", false, appDataBundle, false);
            return true;
        }
    }
    

    Happly Coding!!!

提交回复
热议问题