gpt4 book ai didi

android - Super.onActivityCreated 和 getview 不适用于 ActionBarActivity

转载 作者:行者123 更新时间:2023-11-30 02:27:16 25 4
gpt4 key购买 nike

我想使用以下代码向我的应用程序添加一个 adFragment:

public  class AdFragment extends ActionBarActivity {


public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_ad, container, false);
}

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
AdView mAdView = (AdView) getView().findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
}
}

问题是 Android Studio 是这样说的

无法为 super.OnActivityCreated... 行解析方法 onActivityCreated(Android.os.Bundle)

无法为下一行解析方法 getView()

我试过,如果我将ActionBarActivity替换为Fragment,没有问题,但基于 http://developer.android.com/training/basics/fragments/creating.html

ActionBarActivity 应该可以工作。

有人知道可能的解决方案吗?

提前感谢您的帮助!

最佳答案

以下将在 Fragment 中工作。

任何与膨胀布局相关的代码都应该在onViewCreated 中。 (您想要 View 而不是 Activity ,对吗?)onViewCreatedonCreateView 之后调用。 view 参数是您膨胀的参数。

AdView mAdView;

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

mAdView = (AdView) view.findViewById(R.id.adView);

AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
}

编辑:根据新事件

以下将在 Activity(或 FragmentActivityActionBarActivity)中运行。

AdView mAdView;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_layout); // the layout with this id will be inflated

mAdView = (AdView) findViewById(R.is.adView);

AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);

// ...
}

编辑 2

我不知道广告 View 是如何工作的。也许您不必每次都加载广告,因为它会记住。尝试这样做:

if (savedInstanceState == null) {
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
}

关于android - Super.onActivityCreated 和 getview 不适用于 ActionBarActivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27770965/

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