小编Bis*_*ret的帖子

预加载插页式广告

我在我的应用中运行插页式广告,但我不确定如何预加载它们,以便用户看起来是即时的.通常它可能需要长达10秒,并且用户已经移动到应用程序的不同区域,这非常烦人.

这是应用程序的相关代码:

private void launchInterstitial() {
    interstitialAd = new InterstitialAd(this);
    interstitialAd.setAdUnitId("ca-app-pub-xxxxxxxxxxxxxxxx");

    interstitialAd.setAdListener(new AdListener() {
        @Override
        public void onAdLoaded() {
            showAdInter();
        }

        @Override
        public void onAdFailedToLoad(int errorCode) {
            String message = String.format("onAdFailedToLoad (*a)", getErrorReason(errorCode));
        }

        @Override
        public void onAdClosed() {
            if (exitApp) {
                finish();
            }
        }
    });
}

private void showAdInter() {
    if (interstitialAd.isLoaded()){
        interstitialAd.show();
    } else {
        Log.d("","Interstitial ad failed to load");
    }
}

public void loadInterstitial() {
    AdRequest adRequest = new AdRequest.Builder()
            .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
            .addTestDevice("Fxxxxxxxxxxxxxxxxxxxxx")
            .build();

    interstitialAd.loadAd(adRequest);
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试在活动启动时调用launchInterstitial()和loadInterstitial(),然后在我希望广告出现时调用showAdInter(),但它不会那样工作.

有人有主意吗?

android interstitial

2
推荐指数
1
解决办法
1767
查看次数

对本机数组和对象做出反应

我只需要有关对象和构造函数的简单课程。

var mapMarkers = {
    key: null,
    contactName: null,
    location: null,
};

var markersArray = Object.keys(mapMarkers);

class Map extends Component {

    renderMarker = ({ key, contactName, location }) => {
        newMarker = new mapMarkers(key, contactName, location);
    }
Run Code Online (Sandbox Code Playgroud)

对我来说反复出现的主题是,网上没有关于如何执行此操作的信息。我需要一个实际的工作示例才能遵循,理论是没有用的。

我想要做的是定义一个名为 mapMarkers 的对象类型,它具有自己的属性。然后我希望能够动态地创建该对象的实例并将它们填充到数组中。

最终目标是尝试使用该数组用标记填充我的地图。我得到的错误是:

newMarker = new mapMarkers(key, contactName, location);
Run Code Online (Sandbox Code Playgroud)

根据编译器的说法,这不是一个有效的构造函数。所以我想知道有效的构造函数是什么样的,因为网上的信息没有告诉我任何信息。

另外,什么是:

var markersArray = Object.keys(mapMarkers);
Run Code Online (Sandbox Code Playgroud)

实际上呢?键是否意味着当我实例化一个对象时它会自动填充该数组?或者我需要额外的步骤来执行此操作吗?

多谢你们。

编辑:建议的答案与我根本不相关,语言似乎不一样,而且我在可以编译和运行的任何地方都看不到工作示例。他们也没有尝试做与此处描述的相同的事情。

arrays object react-native

2
推荐指数
1
解决办法
1万
查看次数

Flutter GridView.builder 不可滚动

我有一个包含不同组件的屏幕,其中之一是 GridView.builder,无论我做什么,它都不会滚动。

我尝试了不同的方法,但没有任何效果,所以我将分享我目前正在尝试的方法:

@override
  Widget build(BuildContext context) {
    return Scaffold(
      resizeToAvoidBottomPadding: false,
      body:  Container(
        child: CustomScrollView(
          slivers: <Widget>[
            SliverList(
              delegate: SliverChildListDelegate(
                [
                  //Some widgets here, some images, some buttons.   This section scrolls perfectly.
                ],
            SliverList(
          delegate: SliverChildListDelegate(
            [
              GridView.builder(
                  //physics: ScrollPhysics(),
                  shrinkWrap: true,
                  itemCount: imageURLlist.length,
                  gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
                    crossAxisCount: 1,
                  ),
                  itemBuilder: (BuildContext context, int index) {
                    return ListView(
                      children: <Widget>[
                        Image.network(
                          imageURLlist[index],
                          height: 150,
                          width: MediaQuery.of(context).size.width * 0.5,
                          fit: BoxFit.fill,
                        ),
                      ],
                    );
                  }
                ),
              ),
            ],
          ),
        ],
      ), …
Run Code Online (Sandbox Code Playgroud)

gridview scrollview flutter

1
推荐指数
1
解决办法
7802
查看次数

以编程方式更改 imageView 的颜色

我只想使用代码更改 imageView 对象的颜色,但事实证明它比听起来要困难得多。

这是我的对象 xml:

 <ImageView
    android:id="@+id/lifeSquare"
    android:layout_width="50dp"
    android:layout_height="30dp"
    android:background="#2a80b9"
    android:visibility="invisible"
    android:adjustViewBounds="false"
    android:clickable="true"
    android:cropToPadding="false"
    android:padding="0dp"
    android:scaleType="fitStart" />
Run Code Online (Sandbox Code Playgroud)

如您所见,它只是一个蓝色方块。我希望能够在代码中更改这一行:

    android:background="#2a80b9"
Run Code Online (Sandbox Code Playgroud)

就是这样!我已经阅读了很多关于这个主题的帖子,最有希望的有以下解决方案:

View someView = findViewById(R.id.lifeSquare);
View root = someView.getRootView();
root.setBackgroundColor(Color.parseColor("#fffff"));
Run Code Online (Sandbox Code Playgroud)

但它不起作用。它只是让颜色完全保持原样。

有没有人以前做过这个,或者有更好的想法?

layout android imageview

0
推荐指数
1
解决办法
4895
查看次数