gpt4 book ai didi

Android - 无法解析 getSupportFragmentManager 的符号

转载 作者:行者123 更新时间:2023-11-29 14:23:23 25 4
gpt4 key购买 nike

这是我的 ItemAdapter 的代码,我以这种方式将其用作列表的适配器。

list.setAdapter(new ItemAdapter(thisContext,imageUrl));

我正在尝试为将向 ListFragment 添加项目的按钮实现 onclick 监听器。当我编译时,它说“无法解析符号 getSupportFragmentManager”。请参阅下面的粗体。但我很确定我导入了 android.support.v4.app.FragmentActivity(见下文)。我在我的主要 Activity 中使用了相同的 getSupportFragmentManager 并且它有效。我不明白为什么它不在这里。如果不是,我应该如何获取 HeadlinesFragment 以便我可以添加到该 fragment 的列表中?

感谢我在这里得到的任何帮助。

码头。

package com.suite.android.menu;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
**import android.support.v4.app.FragmentActivity;**


public class ItemAdapter extends BaseAdapter {

private Context itemPageContext;
private String imagesUrl[];
private static final String TAG = "ItemAdapter" ;

public ItemAdapter(Context c, String[] imageUrl)
{
super();
itemPageContext = c;
imagesUrl = imageUrl.clone(); // copy over


}

private LayoutInflater getLayoutInflater()
{
return (LayoutInflater) itemPageContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

public View getView(final int position, View convertView, ViewGroup parent)
{
// all this is for 1 item in the list

View theView = convertView;
final ViewHolder holder;
if (convertView == null) {
theView = getLayoutInflater().inflate(R.layout.item_list_image, null);
holder = new ViewHolder();
holder.text = (TextView) theView.findViewById(R.id.foodTitle);
holder.image = (ImageView) theView.findViewById(R.id.foodImage);
holder.button = (Button) theView.findViewById(R.id.addOrderButton);
theView.setTag(holder);
} else
holder = (ViewHolder) theView.getTag();

holder.text.setText("Item " + position);
holder.image.setImageResource(R.drawable.ic_launcher);

holder.button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
**HeadlinesFragment headFragment = (HeadlinesFragment) getSupportFragmentManager().findFragmentById(R.id.headlines_fragment);**
headFragment.AddItem("One");
Log.d(TAG, "Added Item!");
}
});

return theView;
}

private class ViewHolder {
public TextView text;
public ImageView image;
public Button button;
}

@Override
public int getCount() {
return imagesUrl.length;
}

@Override
public Object getItem(int position) {
return position;
}

@Override
public long getItemId(int position) {
return position;
}

}

最佳答案

我已经有一段时间没有玩 fragment 了。但我相信您只能从 FragmentActivity 类访问 getSupportedFragmentManager。

试试这个

public ItemAdapter(Context c,FragmentActivity activity, String[] imageUrl)
{
super();
itemPageContext = c;
this.activity = activity;
imagesUrl = imageUrl.clone(); // copy over
}

然后在扩展 FragmentActivity 的类中执行此操作:

list.setAdapter(new ItemAdapter(thisContext,thisActivity, imageUrl));

然后在 Adapter 中执行此操作

activity.getSupportedFragmentManager...

希望对你有帮助

关于Android - 无法解析 getSupportFragmentManager 的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12164483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com