1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. MandraKobold, 15.12.2011 #1
    MandraKobold

    MandraKobold Threadstarter Android-Hilfe.de Mitglied

    Hallo,

    ich habe auf eine activity einen SearchDialog gepackt. Dieser wird angezeigt und funktioniert soweit auch einwandfrei, allerdings ist mir aufgefallen, dass wenn ich eine Suchanfrage starte, sprich den Text eingebe und Enter drücke, zur Datenansicht (in ListView) die Activity neu geöffnet wird.
    Würde mich ja soweit nicht stören wenn nicht nach 10 Suchanfragen die Activity 10 mal auf den Stack liegen würde und daher 10 mal geschlossen werden muss.
    Im moment habe ich es jetzt einfach so gelöst, dass die activity wenn sie in onStop geht geschlossen wird. Allerdings würde mich schon interessieren, ob das normal ist oder ob es ein Fehler meinerseits ist und ob es vielleicht eine bessere alternative gibt.

    Hier ein Teil des Codes:

    Code:
    @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.search);
    
            
            this.onSearchRequested();
    
            handleIntent(getIntent());
        }
    
        @Override
        protected void onNewIntent(Intent intent) {
            setIntent(intent);
    
            handleIntent(intent);
        }
    
        private void handleIntent(Intent intent) {
    
            Intent Intent = getIntent();
    
            if (Intent.ACTION_SEARCH.equals(Intent.getAction())) {
                String query = Intent.getStringExtra(SearchManager.QUERY);
                SearchRecentSuggestions suggestions = new SearchRecentSuggestions(
                        this, MySuggestionProvider.AUTHORITY,
                        MySuggestionProvider.MODE);
                suggestions.saveRecentQuery(query, null);
                doMySearch(query);
            }
    
        }
        
    
    
        private void doMySearch(String query) {
    
            searchObj = new ObjectCatalog();
    
            for (int i = 0; i < _obj.get_obj().size(); i++) {
    
                if (_obj.get(i).getName().startsWith(query))
                    searchObj.add(_obj.get(i);
    
            }
    
            // display the result
            adapter = new ObjectList(this, searchObj);
            this.setListAdapter(adapter);
    
        }
    
    
    Danke schon mal

    LG
    Mandra
     
  2. strider, 15.12.2011 #2
    strider

    strider Erfahrener Benutzer

    android:launchMode="singleTask"

    Ist das was du suchst.
     
    MandraKobold gefällt das.
  3. MandraKobold, 15.12.2011 #3
    MandraKobold

    MandraKobold Threadstarter Android-Hilfe.de Mitglied

    Danke.
    Das Hilft und die ganze activity ist einen tick schneller :thumbup:
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Problem mit meiner Login App Android App Entwicklung 10.06.2017
[ERLEDIGT] AVD startet nicht unter Linux Android App Entwicklung 05.06.2017
[INFO] Neue Playstore Richtlinien im Mai 2017 Android App Entwicklung 19.05.2017
[UMFRAGE/INFO/DISKUSSION] Kotlin, die neue Programmiersprache für Android Android App Entwicklung 18.05.2017
[GELÖST] Nach AS Update Fehler Error running app: Default Activity not found Android App Entwicklung 16.05.2017
[GELÖST] Übergabe an zweite Activity Android App Entwicklung 11.05.2017
[OFFEN] Rückkehr aus Dialog Fragment. Wie? Android App Entwicklung 29.04.2017
[ERLEDIGT] RecyclerView in Alert(Dialog) Android App Entwicklung 25.04.2017
[ERLEDIGT] Problem beim Starten einer neuen Activity Android App Entwicklung 21.03.2017
[ERLEDIGT] Interpolator für einen Custom Dialog verwenden in einem Fragment Android App Entwicklung 20.03.2017
Du betrachtest das Thema "Search Dialog startet neue activity" im Forum "Android App Entwicklung",