Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
F
Fast File Manager Pro
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Fast File Manager Pro
Commits
ba77eeca
Commit
ba77eeca
authored
Apr 07, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
高级原生广告修改布局
parent
ac331bbc
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
271 additions
and
89 deletions
+271
-89
KokoLaunchActivity.kt
...in/java/com/zxhy/fastfilemanagerpro/KokoLaunchActivity.kt
+1
-11
MainActivity.kt
...src/main/java/com/zxhy/fastfilemanagerpro/MainActivity.kt
+0
-1
AdNativeAdvanceEx.kt
.../com/zxhy/fastfilemanagerpro/kokoads/AdNativeAdvanceEx.kt
+140
-63
KoHomekoFragment.kt
.../com/zxhy/fastfilemanagerpro/kokohome/KoHomekoFragment.kt
+4
-4
KoManagerkoFragment.kt
...xhy/fastfilemanagerpro/kokomanager/KoManagerkoFragment.kt
+8
-8
ad_native_advance_fast.xml
app/src/main/res/layout/ad_native_advance_fast.xml
+115
-0
ad_native_advance_sample.xml
app/src/main/res/layout/ad_native_advance_sample.xml
+0
-1
fragment_ko_homeko.xml
app/src/main/res/layout/fragment_ko_homeko.xml
+1
-0
fragment_ko_managerko.xml
app/src/main/res/layout/fragment_ko_managerko.xml
+2
-1
No files found.
app/src/main/java/com/zxhy/fastfilemanagerpro/KokoLaunchActivity.kt
View file @
ba77eeca
...
@@ -69,7 +69,7 @@ class KokoLaunchActivity : AppCompatActivity() {
...
@@ -69,7 +69,7 @@ class KokoLaunchActivity : AppCompatActivity() {
finish
()
finish
()
}
}
//
setDebugAdsConsent {}
setDebugAdsConsent
{}
}
}
/**
/**
...
@@ -104,14 +104,4 @@ class KokoLaunchActivity : AppCompatActivity() {
...
@@ -104,14 +104,4 @@ class KokoLaunchActivity : AppCompatActivity() {
(
application
as
MyApplication
).
loadAd
(
this
)
(
application
as
MyApplication
).
loadAd
(
this
)
}
}
fun
printTaskActivity
()
{
val
activityManager
=
getSystemService
(
ACTIVITY_SERVICE
)
as
ActivityManager
val
runningTasks
=
activityManager
.
getRunningTasks
(
10
)
for
(
taskInfo
in
runningTasks
)
{
val
componentName
=
taskInfo
.
topActivity
val
activityName
=
componentName
!!
.
className
Log
.
e
(
"Activity"
,
"Task Activity Name: $activityName"
)
}
}
}
}
\ No newline at end of file
app/src/main/java/com/zxhy/fastfilemanagerpro/MainActivity.kt
View file @
ba77eeca
...
@@ -25,7 +25,6 @@ import com.google.android.gms.ads.nativead.NativeAd
...
@@ -25,7 +25,6 @@ import com.google.android.gms.ads.nativead.NativeAd
import
com.google.android.gms.ads.nativead.NativeAdOptions
import
com.google.android.gms.ads.nativead.NativeAdOptions
import
com.google.android.material.navigation.NavigationBarView
import
com.google.android.material.navigation.NavigationBarView
import
com.zxhy.fastfilemanagerpro.databinding.ActivityMainBinding
import
com.zxhy.fastfilemanagerpro.databinding.ActivityMainBinding
import
com.zxhy.fastfilemanagerpro.databinding.AdNativeAdvanceBinding
import
com.zxhy.fastfilemanagerpro.kokotools.ActivityLauncher
import
com.zxhy.fastfilemanagerpro.kokotools.ActivityLauncher
import
com.zxhy.fastfilemanagerpro.kokotools.permission.PermissionCheck.storePermissionCheck
import
com.zxhy.fastfilemanagerpro.kokotools.permission.PermissionCheck.storePermissionCheck
import
com.zxhy.fastfilemanagerpro.kokotools.permission.StorePermissionEx.requestStoreFollow
import
com.zxhy.fastfilemanagerpro.kokotools.permission.StorePermissionEx.requestStoreFollow
...
...
app/src/main/java/com/zxhy/fastfilemanagerpro/kokoads/AdNativeAdvanceEx.kt
View file @
ba77eeca
...
@@ -12,7 +12,8 @@ import com.google.android.gms.ads.VideoOptions
...
@@ -12,7 +12,8 @@ import com.google.android.gms.ads.VideoOptions
import
com.google.android.gms.ads.nativead.NativeAd
import
com.google.android.gms.ads.nativead.NativeAd
import
com.google.android.gms.ads.nativead.NativeAdOptions
import
com.google.android.gms.ads.nativead.NativeAdOptions
import
com.google.android.gms.ads.nativead.NativeAdView
import
com.google.android.gms.ads.nativead.NativeAdView
import
com.zxhy.fastfilemanagerpro.databinding.AdNativeAdvanceBinding
import
com.zxhy.fastfilemanagerpro.databinding.AdNativeAdvanceFastBinding
import
com.zxhy.fastfilemanagerpro.databinding.AdNativeAdvanceSampleBinding
object
AdNativeAdvanceEx
{
object
AdNativeAdvanceEx
{
...
@@ -34,7 +35,8 @@ object AdNativeAdvanceEx {
...
@@ -34,7 +35,8 @@ object AdNativeAdvanceEx {
flAd
.
removeAllViews
()
flAd
.
removeAllViews
()
flAd
.
addView
(
bindAdNativeAdView
(
nativeAd
,
activity
.
layoutInflater
))
// flAd.addView(bindAdNativeAdViewSample(nativeAd, activity.layoutInflater))
flAd
.
addView
(
bindFastNativeAd
(
nativeAd
,
activity
.
layoutInflater
))
}
}
//静音视频
//静音视频
...
@@ -48,79 +50,154 @@ object AdNativeAdvanceEx {
...
@@ -48,79 +50,154 @@ object AdNativeAdvanceEx {
}
}
}
}
fun
bindAdNativeAdView
(
/**
* 官方布局
*/
private
fun
bindAdNativeAdViewSample
(
nativeAd
:
NativeAd
,
nativeAd
:
NativeAd
,
layoutInflater
:
LayoutInflater
layoutInflater
:
LayoutInflater
):
NativeAdView
{
):
NativeAdView
{
val
adNativeAdvanceBinding
=
AdNativeAdvanceBinding
.
inflate
(
layoutInflater
)
val
adNativeAdvanceBinding
=
AdNativeAdvance
Sample
Binding
.
inflate
(
layoutInflater
)
adNativeAdvanceBinding
.
apply
{
val
nativeAdView
=
root
val
nativeAdView
=
adNativeAdvanceBinding
.
root
nativeAdView
.
mediaView
=
adMedia
nativeAdView
.
mediaView
=
adNativeAdvanceBinding
.
adMedia
nativeAdView
.
headlineView
=
adHeadline
nativeAdView
.
headlineView
=
adNativeAdvanceBinding
.
adHeadline
nativeAdView
.
bodyView
=
adBody
nativeAdView
.
bodyView
=
adNativeAdvanceBinding
.
adBody
nativeAdView
.
callToActionView
=
adCallToAction
nativeAdView
.
callToActionView
=
adNativeAdvanceBinding
.
adCallToAction
nativeAdView
.
iconView
=
adAppIcon
nativeAdView
.
iconView
=
adNativeAdvanceBinding
.
adAppIcon
nativeAdView
.
priceView
=
adPrice
nativeAdView
.
priceView
=
adNativeAdvanceBinding
.
adPrice
nativeAdView
.
starRatingView
=
adStars
nativeAdView
.
starRatingView
=
adNativeAdvanceBinding
.
adStars
nativeAdView
.
storeView
=
adStore
nativeAdView
.
storeView
=
adNativeAdvanceBinding
.
adStore
nativeAdView
.
advertiserView
=
adAdvertiser
nativeAdView
.
advertiserView
=
adNativeAdvanceBinding
.
adAdvertiser
adHeadline
.
text
=
nativeAd
.
headline
adNativeAdvanceBinding
.
adHeadline
.
text
=
nativeAd
.
headline
nativeAd
.
mediaContent
?.
let
{
adMedia
.
mediaContent
=
it
}
nativeAd
.
mediaContent
?.
let
{
adNativeAdvanceBinding
.
adMedia
.
mediaContent
=
it
}
if
(
nativeAd
.
body
==
null
)
{
if
(
nativeAd
.
body
==
null
)
{
adBody
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adBody
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adBody
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adBody
.
visibility
=
View
.
VISIBLE
adBody
.
text
=
nativeAd
.
body
adNativeAdvanceBinding
.
adBody
.
text
=
nativeAd
.
body
}
}
if
(
nativeAd
.
callToAction
==
null
)
{
if
(
nativeAd
.
callToAction
==
null
)
{
adCallToAction
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adCallToAction
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adCallToAction
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adCallToAction
.
visibility
=
View
.
VISIBLE
adCallToAction
.
text
=
nativeAd
.
callToAction
adNativeAdvanceBinding
.
adCallToAction
.
text
=
nativeAd
.
callToAction
}
}
if
(
nativeAd
.
icon
==
null
)
{
if
(
nativeAd
.
icon
==
null
)
{
adAppIcon
.
visibility
=
View
.
GONE
adNativeAdvanceBinding
.
adAppIcon
.
visibility
=
View
.
GONE
}
else
{
}
else
{
adAppIcon
.
setImageDrawable
(
nativeAd
.
icon
?.
drawable
)
adNativeAdvanceBinding
.
adAppIcon
.
setImageDrawable
(
nativeAd
.
icon
?.
drawable
)
adAppIcon
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adAppIcon
.
visibility
=
View
.
VISIBLE
}
}
if
(
nativeAd
.
price
==
null
)
{
if
(
nativeAd
.
price
==
null
)
{
adPrice
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adPrice
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adPrice
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adPrice
.
visibility
=
View
.
VISIBLE
adPrice
.
text
=
nativeAd
.
price
adNativeAdvanceBinding
.
adPrice
.
text
=
nativeAd
.
price
}
}
if
(
nativeAd
.
store
==
null
)
{
if
(
nativeAd
.
store
==
null
)
{
adStore
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adStore
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adStore
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adStore
.
visibility
=
View
.
VISIBLE
adStore
.
text
=
nativeAd
.
store
adNativeAdvanceBinding
.
adStore
.
text
=
nativeAd
.
store
}
}
if
(
nativeAd
.
starRating
==
null
)
{
if
(
nativeAd
.
starRating
==
null
)
{
adStars
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adStars
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adStars
.
rating
=
nativeAd
.
starRating
!!
.
toFloat
()
adNativeAdvanceBinding
.
adStars
.
rating
=
nativeAd
.
starRating
!!
.
toFloat
()
adStars
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adStars
.
visibility
=
View
.
VISIBLE
}
}
if
(
nativeAd
.
advertiser
==
null
)
{
if
(
nativeAd
.
advertiser
==
null
)
{
adAdvertiser
.
visibility
=
View
.
INVISIBLE
adNativeAdvanceBinding
.
adAdvertiser
.
visibility
=
View
.
INVISIBLE
}
else
{
}
else
{
adAdvertiser
.
text
=
nativeAd
.
advertiser
adNativeAdvanceBinding
.
adAdvertiser
.
text
=
nativeAd
.
advertiser
adAdvertiser
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adAdvertiser
.
visibility
=
View
.
VISIBLE
}
}
nativeAdView
.
setNativeAd
(
nativeAd
)
nativeAdView
.
setNativeAd
(
nativeAd
)
val
mediaContent
=
nativeAd
.
mediaContent
val
vc
=
mediaContent
?.
videoController
if
(
vc
!=
null
&&
mediaContent
.
hasVideoContent
())
{
vc
.
videoLifecycleCallbacks
=
object
:
VideoController
.
VideoLifecycleCallbacks
()
{
override
fun
onVideoEnd
()
{
super
.
onVideoEnd
()
}
}
}
return
adNativeAdvanceBinding
.
root
}
fun
bindFastNativeAd
(
nativeAd
:
NativeAd
,
layoutInflater
:
LayoutInflater
):
NativeAdView
{
val
adNativeAdvanceBinding
=
AdNativeAdvanceFastBinding
.
inflate
(
layoutInflater
)
val
nativeAdView
=
adNativeAdvanceBinding
.
root
nativeAdView
.
mediaView
=
adNativeAdvanceBinding
.
adMedia
nativeAdView
.
headlineView
=
adNativeAdvanceBinding
.
adHeadline
nativeAdView
.
bodyView
=
adNativeAdvanceBinding
.
adBody
nativeAdView
.
callToActionView
=
adNativeAdvanceBinding
.
adCallToAction
nativeAdView
.
iconView
=
adNativeAdvanceBinding
.
adAppIcon
nativeAdView
.
starRatingView
=
adNativeAdvanceBinding
.
adStars
nativeAdView
.
advertiserView
=
adNativeAdvanceBinding
.
adAdvertiser
adNativeAdvanceBinding
.
adHeadline
.
text
=
nativeAd
.
headline
nativeAd
.
mediaContent
?.
let
{
adNativeAdvanceBinding
.
adMedia
.
mediaContent
=
it
}
if
(
nativeAd
.
body
==
null
)
{
adNativeAdvanceBinding
.
adBody
.
visibility
=
View
.
INVISIBLE
}
else
{
adNativeAdvanceBinding
.
adBody
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adBody
.
text
=
nativeAd
.
body
}
if
(
nativeAd
.
callToAction
==
null
)
{
adNativeAdvanceBinding
.
adCallToAction
.
visibility
=
View
.
INVISIBLE
}
else
{
adNativeAdvanceBinding
.
adCallToAction
.
visibility
=
View
.
VISIBLE
adNativeAdvanceBinding
.
adCallToAction
.
text
=
nativeAd
.
callToAction
}
if
(
nativeAd
.
icon
==
null
)
{
adNativeAdvanceBinding
.
adAppIcon
.
visibility
=
View
.
GONE
}
else
{
adNativeAdvanceBinding
.
adAppIcon
.
setImageDrawable
(
nativeAd
.
icon
?.
drawable
)
adNativeAdvanceBinding
.
adAppIcon
.
visibility
=
View
.
VISIBLE
}
if
(
nativeAd
.
starRating
==
null
)
{
adNativeAdvanceBinding
.
adStars
.
visibility
=
View
.
INVISIBLE
}
else
{
adNativeAdvanceBinding
.
adStars
.
rating
=
nativeAd
.
starRating
!!
.
toFloat
()
adNativeAdvanceBinding
.
adStars
.
visibility
=
View
.
VISIBLE
}
}
if
(
nativeAd
.
advertiser
==
null
)
{
adNativeAdvanceBinding
.
adAdvertiser
.
visibility
=
View
.
INVISIBLE
}
else
{
adNativeAdvanceBinding
.
adAdvertiser
.
text
=
nativeAd
.
advertiser
adNativeAdvanceBinding
.
adAdvertiser
.
visibility
=
View
.
VISIBLE
}
nativeAdView
.
setNativeAd
(
nativeAd
)
val
mediaContent
=
nativeAd
.
mediaContent
val
mediaContent
=
nativeAd
.
mediaContent
val
vc
=
mediaContent
?.
videoController
val
vc
=
mediaContent
?.
videoController
...
...
app/src/main/java/com/zxhy/fastfilemanagerpro/kokohome/KoHomekoFragment.kt
View file @
ba77eeca
...
@@ -79,10 +79,10 @@ class KoHomekoFragment : Fragment() {
...
@@ -79,10 +79,10 @@ class KoHomekoFragment : Fragment() {
binding
.
flStorage
.
setOnClickListener
{
binding
.
flStorage
.
setOnClickListener
{
startActivity
(
Intent
(
context
,
KoInternalkoActivity
::
class
.
java
))
startActivity
(
Intent
(
context
,
KoInternalkoActivity
::
class
.
java
))
}
}
//
refreshAd(requireActivity(), binding.flAd, ADMOB_AD_UNIT_ID) {
refreshAd
(
requireActivity
(),
binding
.
flAd
,
ADMOB_AD_UNIT_ID
)
{
//
currentNativeAd?.destroy()
currentNativeAd
?.
destroy
()
//
currentNativeAd = it
currentNativeAd
=
it
//
}
}
}
}
override
fun
onStop
()
{
override
fun
onStop
()
{
...
...
app/src/main/java/com/zxhy/fastfilemanagerpro/kokomanager/KoManagerkoFragment.kt
View file @
ba77eeca
...
@@ -99,14 +99,14 @@ class KoManagerkoFragment : Fragment() {
...
@@ -99,14 +99,14 @@ class KoManagerkoFragment : Fragment() {
}
}
}
}
//
AdNativeAdvanceEx.refreshAd(
AdNativeAdvanceEx
.
refreshAd
(
//
requireActivity(),
requireActivity
(),
//
binding.flAd,
binding
.
flAd
,
//
MainActivity.ADMOB_AD_UNIT_ID
MainActivity
.
ADMOB_AD_UNIT_ID
//
) {
)
{
//
currentNativeAd?.destroy()
currentNativeAd
?.
destroy
()
//
currentNativeAd = it
currentNativeAd
=
it
//
}
}
}
}
override
fun
onResume
()
{
override
fun
onResume
()
{
...
...
app/src/main/res/layout/ad_native_advance_fast.xml
0 → 100644
View file @
ba77eeca
<?xml version="1.0" encoding="utf-8"?>
<com.google.android.gms.ads.nativead.NativeAdView
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"#FFFFFF"
android:minHeight=
"50dp"
android:orientation=
"vertical"
>
<com.google.android.gms.ads.nativead.MediaView
android:id=
"@+id/ad_media"
android:layout_width=
"match_parent"
android:layout_height=
"96dp"
android:layout_gravity=
"center_horizontal"
android:layout_margin=
"2dp"
android:maxHeight=
"150dp"
android:minHeight=
"100dp"
/>
<TextView
android:id=
"@+id/ad_body"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"2dp"
android:layout_marginEnd=
"20dp"
android:textSize=
"12sp"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_margin=
"2dp"
android:background=
"@color/black"
android:text=
"Ad"
android:textColor=
"#FFFFFF"
android:textSize=
"12sp"
tools:ignore=
"HardcodedText"
/>
<ImageView
android:id=
"@+id/ad_app_icon"
android:layout_width=
"32dp"
android:layout_height=
"32dp"
android:layout_gravity=
"center_vertical"
android:adjustViewBounds=
"true"
android:paddingEnd=
"5dp"
android:paddingBottom=
"5dp"
android:scaleType=
"centerCrop"
tools:ignore=
"ContentDescription,RtlSymmetry"
/>
<LinearLayout
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginHorizontal=
"5dp"
android:layout_weight=
"1"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/ad_headline"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:textColor=
"#0000FF"
android:textSize=
"16sp"
android:textStyle=
"bold"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<TextView
android:id=
"@+id/ad_advertiser"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:gravity=
"bottom"
android:textSize=
"14sp"
android:textStyle=
"bold"
/>
<RatingBar
android:id=
"@+id/ad_stars"
style=
"?android:attr/ratingBarStyleSmall"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:isIndicator=
"true"
android:numStars=
"5"
android:stepSize=
"0.5"
/>
</LinearLayout>
</LinearLayout>
<Button
android:id=
"@+id/ad_call_to_action"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginEnd=
"5dp"
android:gravity=
"center"
android:textSize=
"12sp"
/>
</LinearLayout>
</LinearLayout>
</com.google.android.gms.ads.nativead.NativeAdView>
\ No newline at end of file
app/src/main/res/layout/ad_native_advance.xml
→
app/src/main/res/layout/ad_native_advance
_sample
.xml
View file @
ba77eeca
...
@@ -66,7 +66,6 @@
...
@@ -66,7 +66,6 @@
</LinearLayout>
</LinearLayout>
<!-- body内容 -->
<LinearLayout
<LinearLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
...
...
app/src/main/res/layout/fragment_ko_homeko.xml
View file @
ba77eeca
...
@@ -386,6 +386,7 @@
...
@@ -386,6 +386,7 @@
android:layout_marginHorizontal=
"20dp"
android:layout_marginHorizontal=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginBottom=
"8dp"
android:layout_marginBottom=
"8dp"
android:maxHeight=
"200dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
...
...
app/src/main/res/layout/fragment_ko_managerko.xml
View file @
ba77eeca
...
@@ -272,9 +272,10 @@
...
@@ -272,9 +272,10 @@
<FrameLayout
<FrameLayout
android:id=
"@+id/fl_ad"
android:id=
"@+id/fl_ad"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"
140dp
"
android:layout_height=
"
wrap_content
"
android:layout_marginHorizontal=
"20dp"
android:layout_marginHorizontal=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginTop=
"20dp"
android:maxHeight=
"200dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/ll_documents"
app:layout_constraintTop_toBottomOf=
"@id/ll_documents"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment