リストビューを使用していますが、このリストビューのonclickリスナーを実装したいと思います。私はリスト内のいくつかのインデックスをクリックすると、別のページが開かれるように、新しいフラグメントにリンクするonclickリスナーをします。私はいくつかのテストを行い、オンクリックリスナー全体が機能しないと判断しました。新しいフラグメントにリンクするリストビューのonclickリスナーを実装する方法
package ca.queensu.engsoc.events;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class eventList extends Activity implements AdapterView.OnItemClickListener
{
public static final String KEY_NAME = "NAME_KEY";
ListView events;
String[] e;
mockData myBadData = new mockData();
@Override
protected void onCreate (Bundle savedInstanceState)
{
//Fragment fragment_blank2=new SomeFragment();
e = myBadData.getData();
super.onCreate(savedInstanceState);
setContentView(R.layout.event_list);
events=(ListView) findViewById(R.id.dayList);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,e);
events.setAdapter(adapter);
events.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, final int i, long l)
{
//TextView temp=(TextView) view;
View temp=view;
//final Toast toast = Toast.makeText(this, temp.getText() + "" + i, Toast.LENGTH_SHORT.show());
temp.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Bundle bundle = new Bundle();
bundle.putString(KEY_NAME,myBadData.getOneData(i));
Fragment fr = new event_description();
fr.setArguments(bundle);
FragmentManager fm = getFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
int contId = v.getId();
fragmentTransaction.replace(contId, fr);
fragmentTransaction.commit();
Intent i=new Intent(eventList.this, fr.getClass());
}
});
}
}
私が間違って何をやっている:
これは私がこれまでしている何ですか?