Java 筛选listview项目后,该项目不会打开相应的活动

Java 筛选listview项目后,该项目不会打开相应的活动,java,android,listview,search,searchview,Java,Android,Listview,Search,Searchview,我有一个listview,项目对应于不同的活动..搜索所需的项目并单击它后,将打开位置0处的项目,而不是项目对应的活动。。。 例:第1项 项目2 项目3 搜索:item3,单击搜索的item3后 问题:它将打开与项1对应的活动 这是我的密码: package com.example.acer.aartisangrah; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import androi

我有一个listview,项目对应于不同的活动..搜索所需的项目并单击它后,将打开位置0处的项目,而不是项目对应的活动。。。 例:第1项 项目2 项目3 搜索:item3,单击搜索的item3后 问题:它将打开与项1对应的活动

这是我的密码:

package com.example.acer.aartisangrah;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

import java.util.ArrayList;

public class first extends AppCompatActivity {
EditText editText;
private ListView listView;

private String[] names = {"प्रार्थना", "सुखकर्ता दु:खहर्ता", "गजानना श्रीगणराया", "येई हो विठ्ठले", "लवथवती विक्राळा", "दुर्गे दुर्घट भारी", "आरती ज्ञानराजा",
        "हे भोळ्या शंकरा", "ओवाळू", "मंगेशा महारूद्रा", "आला गणराया", "शेंदुर लाल चढायो", "एकदंता", "कर्पूर गौरा", "हे गजवधना", "प्रथमेश्वरा", "जयदेवा हे  साईनाथा",
        "श्री सत्यनारायणाची आरती", "श्री महालक्ष्मीची आरती", "ॐ जय लक्ष्मी माता", "आरती संतोषी माता की", "धन्य धन्य हो प्रदक्षिणा", "सुखंकर्ता की दु:खहर्ता",
        "ॐ जय जगदीश", "हे गौरी गजानन", "घालीन लोटांगण"};
private int imageid[] = {R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji,
        R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji,
        R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji,
        R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji, R.drawable.ganeshaji};
int textlength=0;
ArrayList<String> text_sort = new ArrayList<String>();

ArrayList<Integer> image_sort = new ArrayList<Integer>();

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_first);
    listView = (ListView) findViewById(R.id.listView);
    editText = (EditText) findViewById(R.id.inputSearch);
    listView.setAdapter(new MyCustomAdapter(names,imageid));
    editText.addTextChangedListener(new TextWatcher()

    {
        public void afterTextChanged(Editable s)
        {
        }
        public void beforeTextChanged(CharSequence s, int start,int count, int after)
        {
        }
        public void onTextChanged(CharSequence s, int start,int before, int count)
        {   textlength = editText.getText().length();
            text_sort.clear();
            image_sort.clear();
            for (int i = 0; i < names.length; i++)
            {
                if (textlength <= names[i].length())
                {
                    if (editText.getText().toString().equalsIgnoreCase((String) names[i].subSequence(0, textlength)))
                    {
                        text_sort.add(names[i]);
                        image_sort.add(imageid[i]);
                    }
                }
            }
            listView.setAdapter(new MyCustomAdapter(text_sort, image_sort));
        }

    });

    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            if (position == 0) {
                Intent myIntent = new Intent(view.getContext(), akalp.class);
                startActivityForResult(myIntent, 0);
            }

            if (position == 1) {
                Intent myIntent = new Intent(view.getContext(), Sukharta.class);
                startActivityForResult(myIntent, 0);
            }

            if (position == 2) {
                Intent myIntent = new Intent(view.getContext(), gajananashriganraya.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 3) {
                Intent myIntent = new Intent(view.getContext(), yehihovittale.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 4) {
                Intent myIntent = new Intent(view.getContext(), lavathavthi.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 5) {
                Intent myIntent = new Intent(view.getContext(), durgedurgat.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 6) {
                Intent myIntent = new Intent(view.getContext(), nyanraja.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 7) {
                Intent myIntent = new Intent(view.getContext(), bolya.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 8) {
                Intent myIntent = new Intent(view.getContext(), vovalo.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 9) {
                Intent myIntent = new Intent(view.getContext(), mangesha.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 10) {
                Intent myIntent = new Intent(view.getContext(), alaganraya.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 11) {
                Intent myIntent = new Intent(view.getContext(), shendorlal.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 12) {
                Intent myIntent = new Intent(view.getContext(), ekdanta.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 13) {
                Intent myIntent = new Intent(view.getContext(), karpurgaura.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 14) {
                Intent myIntent = new Intent(view.getContext(), heygajavadana.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 15) {
                Intent myIntent = new Intent(view.getContext(), prathmeshvara.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 16) {
                Intent myIntent = new Intent(view.getContext(), sainatha.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 17) {
                Intent myIntent = new Intent(view.getContext(), satyanarayan.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 18) {
                Intent myIntent = new Intent(view.getContext(), jaidevijaidevi.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 19) {
                Intent myIntent = new Intent(view.getContext(),omjaimahalakshmi.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 20) {
                Intent myIntent = new Intent(view.getContext(), maitohaarti.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 21) {
                Intent myIntent = new Intent(view.getContext(), danyadanyaho.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 22) {
                Intent myIntent = new Intent(view.getContext(), sukhartakidukharta.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 23) {
                Intent myIntent = new Intent(view.getContext(), omjaijagdish.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 24) {
                Intent myIntent = new Intent(view.getContext(), heygaurigajanana.class);
                startActivityForResult(myIntent, 0);
            }
            if (position == 25) {
                Intent myIntent = new Intent(view.getContext(), ghalinlotangan.class);
                startActivityForResult(myIntent, 0);
            }
        }
    });

}
class MyCustomAdapter extends BaseAdapter
{
    String[] data_text;
    int[] data_image;
    MyCustomAdapter()
    {

    }

    MyCustomAdapter(String[] names, int[] imageid)
    {
        data_text = names;
        data_image = imageid;
    }
    MyCustomAdapter(ArrayList<String> names, ArrayList<Integer> imageid)
    {
        data_text = new String[names.size()];
        data_image = new int[imageid.size()];
        for(int i=0;i<names.size();i++)
        {
            data_text[i] = names.get(i);
            data_image[i] = imageid.get(i);
        }
    }
    public int getCount()
    {
        return data_text.length;
    }
    public String getItem(int position)
    {
        return null;
    }
    public long getItemId(int position)
    {
        return position;
    }
    public View getView(int position, View convertView, ViewGroup parent)
    {
        LayoutInflater inflater = getLayoutInflater();
        View row;
        row = inflater.inflate(R.layout.list_layout, parent, false);
        TextView textview = (TextView) row.findViewById(R.id.textViewName);
        ImageView imageview = (ImageView) row.findViewById(R.id.imageView);
        textview.setText(data_text[position]);
        imageview.setImageResource(data_image[position]);
        return (row);
    }
}
}
package com.example.acer.aartissangrah;
导入android.os.Bundle;
导入android.support.v7.app.AppActivity;
导入android.text.Editable;
导入android.text.TextWatcher;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.BaseAdapter;
导入android.widget.EditText;
导入android.widget.ImageView;
导入android.widget.ListView;
导入android.widget.TextView;
导入java.util.ArrayList;
公共类首先扩展AppCompative活动{
编辑文本编辑文本;
私有列表视图列表视图;
私有字符串[]名称={”प्रार्थना", "सुखकर्ता दु:खहर्ता", "गजानना श्रीगणराया", "येई हो विठ्ठले", "लवथवती विक्राळा", "दुर्गे दुर्घट भारी", "आरती ज्ञानराजा",
"हे भोळ्या शंकरा", "ओवाळू", "मंगेशा महारूद्रा", "आला गणराया", "शेंदुर लाल चढायो", "एकदंता", "कर्पूर गौरा", "हे गजवधना", "प्रथमेश्वरा", "जयदेवा हे  साईनाथा",
"श्री सत्यनारायणाची आरती", "श्री महालक्ष्मीची आरती", "ॐ जय लक्ष्मी माता", "आरती संतोषी माता की", "धन्य धन्य हो प्रदक्षिणा", "सुखंकर्ता की दु:खहर्ता",
"ॐ जय जगदीश", "हे गौरी गजानन", "घालीन लोटांगण"};
private int-imageid[]={R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,
R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,
R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,
R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji,R.drawable.ganeshaji};
int textlength=0;
ArrayList text_sort=新建ArrayList();
ArrayList image_sort=新建ArrayList();
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_优先);
listView=(listView)findViewById(R.id.listView);
editText=(editText)findViewById(R.id.inputSearch);
setAdapter(新的MyCustomAdapter(名称,imageid));
editText.addTextChangedListener(新的TextWatcher()
{
公共无效后文本已更改(可编辑)
{
}
更改前文本之前的公共void(字符序列s、int start、int count、int after)
{
}
public void onTextChanged(字符序列、int start、int before、int count)
{textlength=editText.getText().length();
text_sort.clear();
图像_sort.clear();
for(int i=0;iif(textlength您在这里所做的是根据单击的listelement的位置启动一个新活动。当用户搜索特定的listelement位置时会发生什么变化,并且您的程序将根据原始listview的位置启动一个活动。而不是使用if(position==x)使用其他即使列表视图更改也会保持不变的内容。您可以使用代码获取元素详细信息

  Object o = lv1.getItemAtPosition(position);
  ItemDetails obj_itemDetails = (ItemDetails)o;
  String name =obj_itemDetails.getName();
然后在开始新活动之前使用名称进行比较,如

if(name.equals(sukharta)){
Intent myIntent = new Intent(view.getContext(), Sukharta.class);
startActivityForResult(myIntent, 0);
}

我希望这会有所帮助。samajal nahi tar parat wichara

检查下面的代码,并为新屏幕创建一个方法,如下所示

  listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

        TextView tv = (TextView) view.findViewById(R.id.textViewName);
        String strSelectedString = tv.getText().toString();
        for(int selectedPosition = 0; selectedPosition  < names.lenght; selectedPosition++)
        {
            if(names[selectedPosition].equalsIgnoreCase(strSelectedString))
            {
                moveToNextActivity(selectedPosition);
                break;
            }
        }    

        }
    });

    public void moveToNextActivity(int position)
    {
        if (position == 0) {
            Intent myIntent = new Intent(view.getContext(), akalp.class);
            startActivityForResult(myIntent, 0);
        }

        if (position == 1) {
            Intent myIntent = new Intent(view.getContext(), Sukharta.class);
            startActivityForResult(myIntent, 0);
        }

        if (position == 2) {
            Intent myIntent = new Intent(view.getContext(), gajananashriganraya.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 3) {
            Intent myIntent = new Intent(view.getContext(), yehihovittale.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 4) {
            Intent myIntent = new Intent(view.getContext(), lavathavthi.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 5) {
            Intent myIntent = new Intent(view.getContext(), durgedurgat.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 6) {
            Intent myIntent = new Intent(view.getContext(), nyanraja.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 7) {
            Intent myIntent = new Intent(view.getContext(), bolya.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 8) {
            Intent myIntent = new Intent(view.getContext(), vovalo.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 9) {
            Intent myIntent = new Intent(view.getContext(), mangesha.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 10) {
            Intent myIntent = new Intent(view.getContext(), alaganraya.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 11) {
            Intent myIntent = new Intent(view.getContext(), shendorlal.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 12) {
            Intent myIntent = new Intent(view.getContext(), ekdanta.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 13) {
            Intent myIntent = new Intent(view.getContext(), karpurgaura.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 14) {
            Intent myIntent = new Intent(view.getContext(), heygajavadana.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 15) {
            Intent myIntent = new Intent(view.getContext(), prathmeshvara.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 16) {
            Intent myIntent = new Intent(view.getContext(), sainatha.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 17) {
            Intent myIntent = new Intent(view.getContext(), satyanarayan.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 18) {
            Intent myIntent = new Intent(view.getContext(), jaidevijaidevi.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 19) {
            Intent myIntent = new Intent(view.getContext(),omjaimahalakshmi.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 20) {
            Intent myIntent = new Intent(view.getContext(), maitohaarti.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 21) {
            Intent myIntent = new Intent(view.getContext(), danyadanyaho.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 22) {
            Intent myIntent = new Intent(view.getContext(), sukhartakidukharta.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 23) {
            Intent myIntent = new Intent(view.getContext(), omjaijagdish.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 24) {
            Intent myIntent = new Intent(view.getContext(), heygaurigajanana.class);
            startActivityForResult(myIntent, 0);
        }
        if (position == 25) {
            Intent myIntent = new Intent(view.getContext(), ghalinlotangan.class);
            startActivityForResult(myIntent, 0);
        }
    }
listView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
TextView tv=(TextView)view.findViewById(R.id.textViewName);
String strSelectedString=tv.getText().toString();
对于(int-selectedPosition=0;selectedPosition Object o = lv1.getItemAtPosition(position);
 ItemDetails obj_itemDetails = (ItemDetails)o;
 String name =obj_itemDetails.getName();
 if(name.equals(sukharta)){
 Intent myIntent = new Intent(view.getContext(), Sukharta.class);
 startActivityForResult(myIntent, 0);
 }