2017-01-18 5 views
0

У меня разные списки всех одинаковых, но теперь у меня проблема. Я хочу создать метод для сохранения избранного. Извините за этот простой вопрос, но я новичок в android и java. Я знаю, что эти данные являются статическими, но я не знаю, возможно ли сделать общий выбор для сохранения этих данных.Сохранить список избранные данные статические

import android.content.Intent; 
import android.graphics.Color; 
import android.renderscript.Sampler; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.text.Editable; 
import android.text.TextWatcher; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.ListView; 
import android.widget.Spinner; 
import android.widget.TextView; 

import com.google.android.gms.ads.AdRequest; 
import com.google.android.gms.ads.AdView; 
import com.google.android.gms.ads.MobileAds; 

import java.io.BufferedReader; 
import java.io.File; 
import java.io.InputStream; 
import java.io.InputStreamReader; 

public class ammunition extends AppCompatActivity { 

    String[] listaammunition = new String[]{"Arrow Zigzag","Arrow, Alchemist’s Fire(1)"}; 

    EditText inputSearch; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_ammunition); 

     final ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), 
       android.R.layout.simple_list_item_1, listaammunition) { 
      @Override 
      public View getView(int position, View convertView, ViewGroup parent) { 
       View view = super.getView(position, convertView, parent); 
       TextView text = (TextView) view.findViewById(android.R.id.text1); 
       text.setTextColor(Color.BLACK); 
       return view; 
      } 
     }; 

     ListView listViewammunition = (ListView) findViewById(R.id.listViewammunition); 
     listViewammunition.setAdapter(adapter); 


     inputSearch = (EditText) findViewById(R.id.inputSearchmunizioni); 

     inputSearch.addTextChangedListener(new TextWatcher() { 
      @Override 
      public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

      } 

      @Override 
      public void onTextChanged(CharSequence s, int start, int before, int count) { 
       adapter.getFilter().filter(s); 
      } 

      @Override 
      public void afterTextChanged(Editable s) { 

      } 
     }); 


     listViewammunition.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

       String Arrowalchemistsfire = adapter.getItem(position); 
       if (Arrowalchemistsfire.equals("Arrow, Alchemist’s Fire(1)")) { 
        Intent Arrowalchemistsfire1 = new Intent(getApplicationContext(), dettagli_armi.class); 
        Arrowalchemistsfire1.putExtra("costo", "75 gp"); 
        Arrowalchemistsfire1.putExtra("dannis", "1D4"); 
        Arrowalchemistsfire1.putExtra("dannim", "1D4"); 
        Arrowalchemistsfire1.putExtra("crit", "x2"); 
        Arrowalchemistsfire1.putExtra("rangeinc", "30 ft."); 
        Arrowalchemistsfire1.putExtra("weight", "1/5 lb."); 
        Arrowalchemistsfire1.putExtra("type", "fire"); 
        Arrowalchemistsfire1.putExtra("dettagli", "Each of these projectiles carries a deadly load of alchemist's fire in its hollow shaft.\n" + 
          " When it strikes a target, the arrow's shaft shatters, releasing the alchemist's fire directly onto the target. One round after impact, the alchemist's fire ignites, dealing 1d4 points of damage.\n" + 
          "\n" + 
          " The target can use a full-round action to attempt to extinguish the flames before taking this damage. It takes a successful Reflex saving throw (DC 15) to extinguish the flames.\n" + 
          " Rolling on the ground earns the target a +2 bonus on the save. Submerging (such as by leaping into a lake) or magically extinguishing the flames automatically kills the flames.\n"); 
        Arrowalchemistsfire1.putExtra("Source", "Dragon #349"); 
        startActivity(Arrowalchemistsfire1); 
       } 
       String Arrowalchemistsfrost = adapter.getItem(position); 
       if (Arrowalchemistsfrost.equals("Arrow, Alchemist’s Frost(1)")) { 
        Intent Arrowalchemistsfrost1 = new Intent(getApplicationContext(), dettagli_armi.class); 
        Arrowalchemistsfrost1.putExtra("costo", "75 gp"); 
        Arrowalchemistsfrost1.putExtra("dannis", "1D4"); 
        Arrowalchemistsfrost1.putExtra("dannim", "1D4"); 
        Arrowalchemistsfrost1.putExtra("crit", "x2"); 
        Arrowalchemistsfrost1.putExtra("rangeinc", "30 ft."); 
        Arrowalchemistsfrost1.putExtra("weight", "1/5 lb."); 
        Arrowalchemistsfrost1.putExtra("type", "cold"); 
        Arrowalchemistsfrost1.putExtra("dettagli", "Similar in designed to the Arrow alchemist's fire, this arrow instead carrier an alchemical compound that creates a spray of intense cold.\n" + 
          " If the arrow strikes a target, the arrow immediately shatters and deals 1d4 points of cold damage.\n"); 
        Arrowalchemistsfrost1.putExtra("Source", "Dragon #349"); 
        startActivity(Arrowalchemistsfrost1); 
       }    
     }); 
    } 
} 

ответ

0

Используйте tinyDB, вам нужно добавить только один класс.

https://github.com/kcochibili/TinyDB--Android-Shared-Preferences-Turbo

Вот фрагмент кода

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_ecart); 

      //Fetch data from DB 
     GlobaDataHolder.getGlobaDataHolder().setShoppingList( 
       new TinyDB(getApplicationContext()).getListObject( 
         PreferenceHelper.MY_CART_LIST_LOCAL, Product.class)); 


} 



    @Override 
    protected void onPause() { 
     super.onPause(); 

     // Store Shopping Cart in DB 
     new TinyDB(getApplicationContext()).putListObject( 
       PreferenceHelper.MY_CART_LIST_LOCAL, GlobaDataHolder 
         .getGlobaDataHolder().getShoppingList()); 
    } 

Для полного кода см

https://github.com/hiteshsahu/ECommerce-App-Android/blob/master/app/src/main/java/com/hitesh_sahu/retailapp/view/activities/ECartHomeActivity.java

+0

Спасибо за ответ, но я могу спросить, если у вас есть учебник. –

+0

обновил мой ответ –

Смежные вопросы