小编Hel*_*oCW的帖子

为什么AD不能位于Android Tabbed活动的屏幕顶部?

我创建了一个标签式活动,我使用android:layout_alignParentTop ="true"设置了位于屏幕顶部的名为android:id ="@ + id/adView"的AD.

运行应用程序后,我发现四个选项卡位于屏幕顶部.如何让AD位于Tab的上方?谢谢!

当前

在此输入图像描述

我希望

在此输入图像描述

activity_main.xml中

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <com.google.android.gms.ads.AdView
        xmlns:ads="http://schemas.android.com/apk/res-auto"
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adSize="SMART_BANNER"
        android:layout_alignParentTop="true"
        ads:adUnitId="@string/ad_unit_id" />


    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_below="@+id/adView"
        android:layout_above="@+id/linearLayout1"
        android:paddingTop="12dip"
        android:paddingLeft="7dip"
        android:paddingRight="7dip"
        android:orientation="vertical" >


        <android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools" android:id="@+id/pager"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            tools:context=".MainActivity" />


    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:gravity="center"
        android:orientation="horizontal"
        android:layout_alignParentBottom="true"
        android:weightSum="4" >

        <Button
            android:id="@+id/btnClose"
            android:layout_width="0dip"
            android:layout_height="fill_parent"
            android:layout_gravity="center"
            android:layout_weight="1"
            android:text="Close" />
    </LinearLayout>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

fragment_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context=".MainActivity$PlaceholderFragment">

    <TextView android:id="@+id/section_label1" android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello" /> …
Run Code Online (Sandbox Code Playgroud)

android

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

我可以在Android Studio中的模拟器中测试屏幕记录吗?

我尝试从下面的链接测试关于屏幕记录的示例代码,我修改了一些代码以禁用录制音频.

http://www.truiton.com/2015/05/capture-record-android-screen-using-mediaprojection-apis/

我在Android Studio V1.3中测试代码,但是我收到以下错误,文件capture.mp4为空.

我不确定我是否必须在真正的手机上测试代码?你可以帮帮我吗 ?谢谢!

错误信息

09-22 06:41:50.250    2167-2167/? E/AndroidRuntime? FATAL EXCEPTION: main
    Process: screencapture.truiton.com.myapplication, PID: 2167
    java.lang.RuntimeException: stop failed.
            at android.media.MediaRecorder.stop(Native Method)
            at screencapture.truiton.com.myapplication.MainActivity.onToggleScreenShare(MainActivity.java:93)
            at screencapture.truiton.com.myapplication.MainActivity$1.onClick(MainActivity.java:55)
            at android.view.View.performClick(View.java:4780)
            at android.widget.CompoundButton.performClick(CompoundButton.java:120)
            at android.view.View$PerformClick.run(View.java:19866)
            at android.os.Handler.handleCallback(Handler.java:739)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5257)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Run Code Online (Sandbox Code Playgroud)

源代码

package screencapture.truiton.com.myapplication;

public class MainActivity extends Activity {

    private static final String TAG = "MainActivity";
    private static final int PERMISSION_CODE = 1;
    private int mScreenDensity;
    private MediaProjectionManager …
Run Code Online (Sandbox Code Playgroud)

android

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

如何设计一个复杂的课程,在Kotlin将来可以轻松扩展一些课程?

我是Kotlin的初学者,我使用代码A来定义一个复杂的类MDetail,并使用代码B来创建一个对象aMDetail1,它可以工作.

但数据结构是太糟糕了扩大,如果我有一个新的数据类如ScreenDefMDetail 就像代码C,所有旧的代码必须rewriten.

对于包含某些类的复杂类,是否有良好的数据结构?我希望将来数据构建可以轻松扩展!

代码A.

data class BluetoothDef(val Status:Boolean=false)
data class WiFiDef(val Name:String, val Status:Boolean=false)

data class MDetail (
        val _id: Long,
        val bluetooth: BluetoothDef,
        val wiFi:WiFiDef
)
Run Code Online (Sandbox Code Playgroud)

代码B.

var mBluetoothDef1= BluetoothDef()
var mWiFiDef1= WiFiHelper(this).getWiFiDefFromSystem()
var aMDetail1= MDetail(7L,mBluetoothDef1,mWiFiDef1)
Run Code Online (Sandbox Code Playgroud)

代码C.

data class BluetoothDef(val Status:Boolean=false)
data class WiFiDef(val Name:String, val Status:Boolean=false)
data class ScreenDef(val Name:String, val size:Long)
... 

data class MDetail (
        val _id: Long,
        val bluetooth: BluetoothDef,
        val wiFi:WiFiDef
        val aScreenDef:ScreenDef        
        ...
)
Run Code Online (Sandbox Code Playgroud)

以下代码基于 …

java kotlin

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

Kotlin 中数据类中的参数可以是 var 吗?

我是 Kotlin 的初学者,我看过一些关于数据类的示例代码,似乎参数都是 val 类型,就像代码 A

我需要改变数据类MSetting的一些值,所以我设计了Code B,你能告诉我Code B是不是好方法?

代码 A

data class MSetting (
        val _id: Long, 
        val name: String,
        val createdDate: Long,
        val description: String
)
Run Code Online (Sandbox Code Playgroud)

代码 B

data class MSetting (
        var _id: Long, 
        var name: String,
        var createdDate: Long,
        var description: String
)
Run Code Online (Sandbox Code Playgroud)

android kotlin data-class

7
推荐指数
2
解决办法
2706
查看次数

如何将MutableMap <String,Any?>传递给vararg值:Pair <String,Any?>?

以下代码来自"Kotlin for Android Developers",您可以访问https://github.com/antoniolg/Kotlin-for-Android-Developers

为了插入行数据CityForecastTable.NAME,我必须vararg通过源代码传递值 fun SQLiteDatabase.insert

1: 作者做了一个扩展toVarargArray()转换MutableMap<String, Any?>Pair<String, Any?>,我不知道是否有更好的方法来做到这一点.我需要使用扩展功能吗?

2: 作者必须使用it.value!!代码C中的代码,我不知道代码fun <K, V : Any> Map<K, V?>.toVarargArray(): Array<out Pair<K, V?>> = map({ Pair(it.key, it.value) }).toTypedArray()是否正确?

3:当我插入列包含空值的行数据时,我不知道应用程序是否会崩溃.

import org.jetbrains.anko.db.*
class ForecastDb(private val forecastDbHelper: ForecastDbHelper = ForecastDbHelper.instance,
                 private val dataMapper: DbDataMapper = DbDataMapper()) : ForecastDataSource {

    fun saveForecast(forecast: ForecastList) = forecastDbHelper.use {           

         //dataMapper.convertFromDomain(forecast) will return CityForecast object 
         with(dataMapper.convertFromDomain(forecast)) {
            insert(CityForecastTable.NAME, *map.toVarargArray())           
        } …
Run Code Online (Sandbox Code Playgroud)

android kotlin anko

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

如何创建像Clipboard Pro App这样的浮动窗口?

以下图片是应用https://play.google.com/store/apps/details?id=jp.snowlife01.android.clipboard的窗口.我把它命名为主窗口.

似乎主窗口不是普通窗口.它位于其他窗口的顶部,主窗口无法移动.

当我单击主窗口中的最小化按钮时,将显示一个小点图标,可以移动小点图标,单击小点图标时可以恢复主窗口.

我认为小点图标是一个SYSTEM_ALERT_WINDOW,但主窗口怎么样?

图片

在此输入图像描述

java android android-window

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

如何在 Android Studio 3.3.1 工具栏上显示 Git 的 Push 按钮?

我是 Git 和 Github 的初学者,现在我通过在 Android Studio 上单击菜单项 VCS -> Git -> Push... 将更改提交到远程 Github 服务器。

图像是我的 Git 工具栏。只有一些按钮。

在此处输入图片说明

我希望 Push 按钮可以显示在主工具栏上,我该怎么办?

顺便说一句,我已经阅读了文章https://code.tutsplus.com/tutorials/working-with-git-in-android-studio--cms-30514,但我在 Android Studio 上找不到图像的步骤.

在此处输入图片说明

git github android-studio

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

Android Studio 3.3.1 中关于 Github 的 Update Project 和 Pull 命令有什么不同?

我在 Android Studio 3.3.1 的项目中使用 Github。

我发现菜单项 Update Project 和 Pull 旁边都有类似的图标。您可以看到图 1,图 2 是更新项目的详细信息。

Android Studio 3.3.1 中关于 Github 的 Update Project 和 Pull 命令有什么不同?

图 1 在此处输入图片说明

图 2 在此处输入图片说明

github android-studio

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

如何在 Android 中使用 CameraX 显示负片模式预览?

我正在学习CameraX API,CameraXBasic是office 示例代码。

CameraXBasic项目中的CameraFragment.kt显示真实的相机预览。

现在我希望显示负模式预览。如何使用 CameraX API?有示例代码吗?

相机片段.kt

private lateinit var viewFinder: TextureView

private fun bindCameraUseCases() {
    // Get screen metrics used to setup camera for full screen resolution
    val metrics = DisplayMetrics().also { viewFinder.display.getRealMetrics(it) }
    val screenAspectRatio = Rational(metrics.widthPixels, metrics.heightPixels)
    Log.d(TAG, "Screen metrics: ${metrics.widthPixels} x ${metrics.heightPixels}")

    // Set up the view finder use case to display camera preview
    val viewFinderConfig = PreviewConfig.Builder().apply {
        setLensFacing(lensFacing)
        // We request aspect ratio but no resolution to let …
Run Code Online (Sandbox Code Playgroud)

android android-camerax

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

我可以在 Android Studio 3.6 中自定义“代码、拆分、设计”的图标吗?

我将 Android Studio 更新到 V3.6,我发现“代码、拆分、设计”的图标位于右上角。

我可以自定义“代码、拆分、设计”图标并使其位于左下角吗?你可以看到图A。

图片A

-英石

android-studio

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