Floating action button are not aligned properly in Jelly bean (API 18), working fine 18 and above - floating-action-button

I created layout with floating action button. There is one floating action button (called filter) by which i show up two other FABs.
Issue is about space between FABs. Gap is showing more in API level 18 and below.
Layout is working good in API level 19 and above but it is not showing properly in below 19, there is too much gap between floating action button, not sure what is issue here. Please let me know if i need spacial handling for 18 and below.
enter code here
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#color/bottom_bar_color"
android:paddingTop="#dimen/activity_vertical_margin">
<android.support.v4.widget.SwipeRefreshLayout
android:id="#+id/pull_to_refresh_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.stylzq.widget.StylzQRecyclerView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="#+id/images_data_list_frag_rv"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
<android.support.design.widget.FloatingActionButton
android:id="#+id/go_to_top_fab"
android:layout_width="52dp"
android:layout_height="52dp"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="130dp"
android:layout_marginRight="15dp"
android:clickable="false"
android:src="#drawable/go_to_top"
android:visibility="gone"
app:backgroundTint="#color/colorPrimary"
app:borderWidth="0dp"
app:elevation="6dp"
app:layout_anchorGravity="bottom|right"
app:pressedTranslationZ="12dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="190dp"
android:gravity="end"
android:orientation="vertical">
<LinearLayout
android:id="#+id/ll_home_lyt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="#dimen/dimen_6"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:background="#drawable/fab_text_background"
android:padding="#dimen/dimen_3"
android:text=" Home "
android:textColor="#color/white"
android:textSize="16sp" />
<android.support.design.widget.FloatingActionButton
android:id="#+id/fab_home_api"
android:layout_width="52dp"
android:layout_height="52dp"
android:layout_marginTop="#dimen/dimen_6"
android:layout_marginRight="16dp"
android:src="#drawable/ic_home"
app:backgroundTint="#color/colorPrimary"
app:elevation="6dp"
app:pressedTranslationZ="12dp"
app:rippleColor="#color/colorPrimaryLight" />
</LinearLayout>
<LinearLayout
android:id="#+id/celebs_lyt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="#dimen/dimen_6"
android:visibility="gone">
<TextView
android:id="#+id/celeb_TV"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:background="#drawable/fab_text_background"
android:padding="#dimen/dimen_3"
android:text=" Celebrity "
android:textColor="#color/white"
android:textSize="16sp" />
<android.support.design.widget.FloatingActionButton
android:id="#+id/celebs_api_fab"
android:layout_width="52dp"
android:layout_height="52dp"
android:layout_marginRight="16dp"
android:src="#drawable/ic_celeb"
app:backgroundTint="#color/colorPrimary"
app:elevation="6dp"
app:pressedTranslationZ="12dp"
app:rippleColor="#color/colorPrimaryLight" />
</LinearLayout>
<LinearLayout
android:id="#+id/popular_lyt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="#dimen/dimen_6"
android:orientation="horizontal"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:background="#drawable/fab_text_background"
android:padding="#dimen/dimen_3"
android:text=" Popular "
android:textColor="#color/white"
android:textSize="16sp" />
<android.support.design.widget.FloatingActionButton
android:id="#+id/popular_api_fab"
android:layout_width="52dp"
android:layout_height="52dp"
android:layout_marginRight="16dp"
android:src="#drawable/ic_popular"
app:backgroundTint="#color/colorPrimary"
app:elevation="6dp"
app:pressedTranslationZ="12dp"
app:rippleColor="#color/colorPrimaryLight" />
</LinearLayout>
</LinearLayout>
<android.support.design.widget.FloatingActionButton
android:id="#+id/api_filter_fab"
android:layout_width="52dp"
android:layout_height="52dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="130dp"
android:layout_marginRight="16dp"
android:src="#drawable/ic_filter"
app:backgroundTint="#color/colorPrimary"
app:borderWidth="0dp"
app:elevation="6dp"
app:layout_anchorGravity="bottom|right"
app:pressedTranslationZ="12dp"
app:rippleColor="#color/colorPrimaryLight" />
</RelativeLayout>

Related

Android Java - Make two containers side by side with percentage width

I have this scenario in an android page:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:background="#drawable/border">
<RelativeLayout
android:id="#+id/lbltvFirstContainer"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintWidth_default="percent"
app:layout_constraintWidth_percent="90" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="#+id/lbltvFirstText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:visibility="visible"
android:layout_gravity="left"
android:textSize="19dp"
android:textStyle="bold" />
<TextView
android:id="#+id/tvSecondText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvFirstText"
android:textColor="#color/green"
android:textSize="19dp"
android:textStyle="bold" />
<com.google.android.flexbox.FlexboxLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:flexDirection="row"
app:justifyContent="flex_end"
app:flexWrap="wrap"
app:layout_flexBasisPercent="50%"
app:alignItems="flex_start"
app:alignContent="flex_start"
app:showDividerVertical="middle"
app:dividerDrawable="#drawable/divider_flexbox">
<com.google.android.material.button.MaterialButton
android:id="#+id/btnButton"
android:background="#android:color/transparent"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_marginTop="-5dp"
app:icon="#drawable/btnButton"
app:iconTint="#null" />
<ImageView
android:id="#+id/first_icon"
android:src="#drawable/grey_24dp"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_weight="0.5"
android:layout_marginRight="4dp"
android:layout_marginTop="4dp"
android:layout_alignParentRight="true"/>
</com.google.android.flexbox.FlexboxLayout>
</RelativeLayout>
<RelativeLayout
android:id="#+id/elements_container"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lblThirdImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/icon_image"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvThirdText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:layout_toRightOf="#+id/lblThirdImage"
android:gravity="start"
android:textSize="18dp" />
</RelativeLayout>
<com.google.android.flexbox.FlexboxLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:flexWrap="wrap"
app:alignItems="stretch"
app:alignContent="stretch"
app:showDividerVertical="middle"
app:dividerDrawable="#drawable/divider" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lblFourImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/four_image"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvFourText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvFourImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvFiveImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start"
android:src="#drawable/five_image" />
<TextView
android:id="#+id/tvFiveText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvFiveImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvSixImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start"
android:src="#drawable/six_image" />
<TextView
android:id="#+id/tvSixText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvSixImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvSevenImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/seven_image"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvSevenImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvSevenImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/tvEightImage"
android:src="#drawable/eigth_image"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginRight="4dp"
android:layout_marginTop="10dp"
android:layout_alignParentRight="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/tvNineImage"
android:src="#drawable/nine_image"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginTop="10dp"
android:layout_alignParentRight="true"/>
<com.google.android.material.button.MaterialButton
android:id="#+id/lblTenImage"
android:background="#android:color/transparent"
android:layout_width="42dp"
android:layout_height="42dp"
app:icon="#drawable/ten_image"
app:iconTint="#null" />
</LinearLayout>
</com.google.android.flexbox.FlexboxLayout>
</RelativeLayout>
<RelativeLayout
android:id="#+id/lbltvSecondContainer"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintWidth_default="percent"
app:layout_constraintWidth_percent="10">
</RelativeLayout>
</LinearLayout>
And I am trying to have two containers side by side, lbltvFirstContainer and lbltvSecondContainer, where I would set width by percentage so in the second container I can put just a ">" like a button to go to another page so after searching I found somewhere to use those app:layout_constraintWidth_default="percent" and app:layout_constraintWidth_percent="10" but looks like that doesn't work.... do you have a direction to make those two main containers with percentage width? Thanks in advance!
Cheers
Edit:
after #Cheticamp 's suggest I changed as :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:background="#drawable/border">
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="#+id/left_guideline"
app:layout_constraintGuide_percent=".80"
android:orientation="horizontal" />
<RelativeLayout
android:id="#+id/left_container"
android:layout_width="0dp"
android:layout_height="match_parent"
app:layout_constraintEnd_toStartOf="#+id/left_guideline"
app:layout_constraintStart_toStartOf="parent">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="#+id/lbltvFirstText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:visibility="visible"
android:layout_gravity="left"
android:textSize="19dp"
android:textStyle="bold"
android:text="Matricola:" />
<TextView
android:id="#+id/tvSecondText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvFirstText"
android:textColor="#color/area_frg"
android:textSize="19dp"
android:textStyle="bold" />
<com.google.android.flexbox.FlexboxLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:flexDirection="row"
app:justifyContent="flex_end"
app:flexWrap="wrap"
app:layout_flexBasisPercent="50%"
app:alignItems="flex_start"
app:alignContent="flex_start"
app:showDividerVertical="middle"
app:dividerDrawable="#drawable/divider_flexbox">
<com.google.android.material.button.MaterialButton
android:id="#+id/btnButton"
android:background="#android:color/transparent"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_marginTop="-5dp"
app:icon="#drawable/btnButton"
app:iconTint="#null" />
<ImageView
android:id="#+id/first_icon"
android:src="#drawable/grey_24dp"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_weight="0.5"
android:layout_marginRight="4dp"
android:layout_marginTop="4dp"
android:layout_alignParentRight="true"/>
</com.google.android.flexbox.FlexboxLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lblThirdImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/wifi"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvThirdText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:layout_toRightOf="#+id/lblThirdImage"
android:gravity="start"
android:textSize="18dp" />
</RelativeLayout>
<com.google.android.flexbox.FlexboxLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:flexWrap="wrap"
app:alignItems="stretch"
app:alignContent="stretch"
app:showDividerVertical="middle"
app:dividerDrawable="#drawable/divider" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lblFourImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/thermo"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvFourText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lblFourImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvFiveImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start"
android:src="#drawable/full_batt" />
<TextView
android:id="#+id/tvFiveText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvFiveImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvSixImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start"
android:src="#drawable/power" />
<TextView
android:id="#+id/tvSixText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvSixImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/lbltvSevenImage"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="#drawable/gsm"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_gravity="start" />
<TextView
android:id="#+id/tvSevenText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:padding="4dp"
android:visibility="visible"
android:layout_toRightOf="#+id/lbltvSevenImage"
android:gravity="start"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/tvEightImage"
android:src="#drawable/eight_image"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginRight="4dp"
android:layout_marginTop="10dp"
android:layout_alignParentRight="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="#+id/tvNineImage"
android:src="#drawable/nine_image"
android:background="#android:color/transparent"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginTop="10dp"
android:layout_alignParentRight="true"/>
<com.google.android.material.button.MaterialButton
android:id="#+id/lblTenImage"
android:background="#android:color/transparent"
android:layout_width="42dp"
android:layout_height="42dp"
app:icon="#drawable/play"
app:iconTint="#null" />
</LinearLayout>
</com.google.android.flexbox.FlexboxLayout>
</RelativeLayout>
<androidx.constraintlayout.widget.Guideline
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="#+id/right_guideline"
app:layout_constraintGuide_percent=".20"
android:orientation="horizontal" />
<RelativeLayout
android:id="#+id/right_container"
android:layout_width="0dp"
android:layout_height="match_parent"
app:layout_constraintEnd_toStartOf="#+id/right_guideline"
app:layout_constraintStart_toStartOf="parent">
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
using those ConstraintLayout but seems it keeps returning this error:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.mytestapp, PID: 32175
java.lang.AssertionError: LEFT
at androidx.constraintlayout.solver.widgets.Guideline.getAnchor(Guideline.java:147)
at androidx.constraintlayout.solver.widgets.ConstraintWidget.immediateConnect(ConstraintWidget.java:1620)
at androidx.constraintlayout.widget.ConstraintLayout.applyConstraintsFromLayoutParams(ConstraintLayout.java:1359)
at androidx.constraintlayout.widget.ConstraintLayout.setChildrenConstraints(ConstraintLayout.java:1253)
at androidx.constraintlayout.widget.ConstraintLayout.updateHierarchy(ConstraintLayout.java:1149)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1685)
at android.view.View.measure(View.java:25532)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:25532)
at android.widget.ListView.measureScrapChild(ListView.java:1350)
at android.widget.ListView.measureHeightOfChildren(ListView.java:1419)
at android.widget.ListView.onMeasure(ListView.java:1323)
at android.view.View.measure(View.java:25532)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25532)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25532)
at androidx.recyclerview.widget.RecyclerView$LayoutManager.measureChildWithMargins(RecyclerView.java:9384)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1653)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at androidx.viewpager2.widget.ViewPager2.onLayout(ViewPager2.java:527)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at com.google.android.material.appbar.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:148)
at com.google.android.material.appbar.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:43)
at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:2003)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:918)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
E/AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at com.android.internal.policy.DecorView.onLayout(DecorView.java:831)
at android.view.View.layout(View.java:22900)
at android.view.ViewGroup.layout(ViewGroup.java:6389)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:3619)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3087)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2060)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8430)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:972)
at android.view.Choreographer.doCallbacks(Choreographer.java:796)
at android.view.Choreographer.doFrame(Choreographer.java:731)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:250)
at android.app.ActivityThread.main(ActivityThread.java:7886)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:970)
so I re-checked what I typed in XML and seems it looks ok but maybe shall I have forgot or mistaken something ?
Thanks!
Cheers!
Edit 2 :
Hello #Cheticamp , following your suggest I started from scratch to create a ConstraintLayout with two guidelines dimensioned by percent as follow:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.Guideline
android:id="#+id/test_left_guideline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.50" />
<androidx.constraintlayout.widget.Guideline
android:id="#+id/test_right_guideline"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.20"
app:layout_constraintLeft_toEndOf="#id/test_left_guideline" />
</androidx.constraintlayout.widget.ConstraintLayout>
so it's supposed to see in Design those two guidelines side by side since I put app:layout_constraintLeft_toEndOf="#id/test_left_guideline" so after I could put two RelativeLayouts as containers following those guidelines but it looks like both guidelines starts from the left side of the parent window... which attribute I should set to make those two guidelines side by side? Thanks in advance! Cheers

android studio running code on phone auto turns off.I think there is something wrong in my layout design but i cant figure out why

Android Studio running code on phone auto turns off.
I am trying to build a translator application.
I think there is something wrong in my layout design but I cant figure out what.
I divided my homepage into two parts.
This is my activity_home layout.
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout_editor_absoluteY="81dp"
tools:layout_editor_absoluteX="0dp"
android:background="#drawable/bwall1"
android:fitsSystemWindows="true"
tools:context="nf.co.hoptec.ocr.Home">
<ImageButton
android:id="#+id/fab"
android:layout_width="100dp"
android:layout_height="0dp"
android:adjustViewBounds="true"
android:background="#drawable/roundcorner"
android:cropToPadding="false"
android:scaleType="fitCenter"
app:layout_constraintHorizontal_bias="0.19"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:srcCompat="#drawable/cameraicon"
tools:layout_constraintTop_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toBottomOf="#+id/fab2"
app:layout_constraintTop_toTopOf="#+id/fab2" tools:targetApi="lollipop"/>
<ImageButton
android:id="#+id/fab2"
android:layout_width="100dp"
android:layout_height="100dp"
android:adjustViewBounds="true"
android:background="#drawable/roundcorner"
android:padding="10dp"
android:scaleType="fitCenter"
android:src="#drawable/imageicon"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginEnd="72dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginBottom="47dp" tools:targetApi="lollipop"/>
<include
layout="#layout/content_home"
android:layout_width="0dp"
android:layout_height="400dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
tools:layout_constraintBottom_creator="1"
tools:layout_constraintLeft_creator="1"
tools:layout_constraintRight_creator="1"
tools:layout_constraintTop_creator="1" />
</android.support.constraint.ConstraintLayout>
This is my content_home layout
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="0dp"
app:layout_behavior="#string/appbar_scrolling_view_behavior"
tools:context="nf.co.hoptec.ocr.Home"
tools:showIn="#layout/activity_home">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:orientation="vertical"
android:visibility="visible">
<LinearLayout
android:background="#drawable/border"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="10dp"
android:orientation="vertical"
android:visibility="visible"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="15dp"
android:orientation="horizontal"
android:weightSum="1">
<Button
android:id="#+id/source"
android:layout_width="135dp"
android:layout_height="15dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_margin="1dp"
android:background="#F7F9FC"
android:text=":: Source Language ::"
android:textColor="#000000"
android:textSize="12sp" />
<ImageButton
android:id="#+id/proceedbutt"
android:layout_width="20dip"
android:layout_height="20dip"
android:background="#00ffffff"
android:adjustViewBounds="true"
android:cropToPadding="false"
android:scaleType="centerCrop"
app:srcCompat="#drawable/proceed"
android:layout_alignParentEnd="true" />
<ImageButton
android:id="#+id/speakerbutt"
android:layout_width="20dip"
android:layout_height="20dip"
android:background="#00ffffff"
android:adjustViewBounds="true"
android:cropToPadding="false"
android:scaleType="centerCrop"
app:srcCompat="#drawable/speaker"
android:layout_marginRight="5dp"
android:layout_toLeftOf="#+id/proceedbutt"/>
<ImageButton
android:id="#+id/copy"
android:layout_width="20dip"
android:layout_height="20dip"
android:background="#00ffffff"
android:adjustViewBounds="true"
android:cropToPadding="false"
android:scaleType="centerCrop"
app:srcCompat="#drawable/copy"
android:layout_marginRight="5dp"
android:layout_toLeftOf="#+id/speakerbutt" />
</RelativeLayout>
<EditText
android:id="#+id/ocrtext"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="30.0dp"
android:layout_marginRight="30.0dp"
android:layout_marginTop="15dp"
android:ems="10"
android:inputType="textMultiLine"
android:selectAllOnFocus="true"
android:singleLine="true"
android:text="Type here to translate"
android:textSize="12sp"
android:layout_marginBottom="15dp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:visibility="visible"
android:paddingTop="10dp">
<ImageView
android:background="#color/white"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="15dp"
android:id="#+id/ocrimg" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:background="#drawable/border"
android:orientation="vertical"
android:visibility="visible">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="15dp"
android:orientation="horizontal"
android:weightSum="1">
<Button
android:id="#+id/target"
android:layout_width="135dp"
android:layout_height="15dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_margin="1dp"
android:background="#F7F9FC"
android:text=":: Result Language ::"
android:textColor="#000000"
android:textSize="12sp" />
<ImageButton
android:id="#+id/nth"
android:layout_width="20dip"
android:layout_height="20dip"
android:layout_alignParentEnd="true"
android:background="#00ffffff"
app:srcCompat="#drawable/xparent" />
<ImageButton
android:id="#+id/speakerbutt1"
android:layout_width="20dip"
android:layout_height="20dip"
android:layout_marginRight="5dp"
android:layout_toLeftOf="#+id/nth"
android:adjustViewBounds="true"
android:background="#00ffffff"
android:cropToPadding="false"
android:scaleType="centerCrop"
app:srcCompat="#drawable/speaker" />
<ImageButton
android:id="#+id/copyt"
android:layout_width="20dip"
android:layout_height="20dip"
android:layout_marginRight="5dp"
android:layout_toLeftOf="#+id/speakerbutt1"
android:adjustViewBounds="true"
android:background="#00ffffff"
android:cropToPadding="false"
android:scaleType="centerCrop"
app:srcCompat="#drawable/copy" />
</RelativeLayout>
<TextView
android:id="#+id/ocrtextt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="15dp"
android:layout_marginLeft="30.0dp"
android:layout_marginRight="30.0dp"
android:layout_marginTop="15dp"
android:background="?attr/editTextBackground"
android:ems="10"
android:inputType="textMultiLine"
android:text=""
android:textSize="10sp" />
</LinearLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
Can you tell me what is wrong?
I think its because of constraint layout.Constraint layout is new layout of Android in which you can just drag and drop buttons,textview and all but it may looks perfect in preview but not in your phone because every device have different size of display screen so constraint layout will work different in different android phones and you may also be getting warning or error in that layout file.So try to use LinearLayout or RelativeLayout and then errors will not come.

How do I remove the extra space in this recyclerview element in Android?

I'm implementing a Recycler View in Android to create a list, but for some reason I see a space in between two elements, and I'm not able to pinpoint the error location. As to why is this happening, my guess is on the row element XML.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:cardview1="http://schemas.android.com/apk/res-auto"
android:id="#+id/row_top_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="#+id/pos_cv"
android:layout_width="match_parent"
android:layout_height="72dp"
android:clickable="true"
cardview1:cardCornerRadius="6dp"
cardview1:cardElevation="4dp"
cardview1:cardMaxElevation="6dp">
<TextView
android:id="#+id/manager1"
android:layout_width="220dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="15dp"
android:text="Store Manager/Branch"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:orientation="horizontal">
<TextView
android:id="#+id/retail"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="30dp"
android:text="Abc Retail"
android:textSize="10sp" />
<View
android:layout_width="170dp"
android:layout_height="match_parent" />
<TextView
android:id="#+id/amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:text="25,000"
android:textColor="#color/colorDarkPink"
android:textSize="14sp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="#+id/address"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="50dp"
android:text="Abc Retail"
android:textSize="10sp" />
</android.support.v7.widget.CardView>
RecyclerView
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="#+id/list_view_header_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:weightSum="5"
android:background="#color/colorDarkPink"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Top 3 Performers"
android:textStyle="bold"
android:textColor="#color/colorPrimaryLight"
android:layout_weight="3"
android:textSize="16sp"
android:lines="1"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sales"
android:textStyle="bold"
android:textColor="#color/colorPrimaryLight"
android:layout_weight="2"
android:textSize="16sp"
android:lines="1"
/>
</LinearLayout>
<android.support.v7.widget.RecyclerView
android:id="#+id/performer_lv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="#color/colorTransparent"
android:layout_marginTop="16dp"
android:dividerHeight="4dp"
/>
It is because of recycler view height. Try to change recyclerview height to wrap_content.And in cardview layout in linear-layout use height wrap_content.
try this code for your cardview:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:cardview1="http://schemas.android.com/apk/res-auto"
android:id="#+id/row_top_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="#+id/pos_cv"
android:layout_width="match_parent"
android:layout_height="72dp"
android:clickable="true"
android:layout_marginBottom="10dp"
cardview1:cardCornerRadius="6dp"
cardview1:cardElevation="4dp"
cardview1:cardMaxElevation="6dp">
<TextView
android:id="#+id/manager1"
android:layout_width="220dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="15dp"
android:text="Store Manager/Branch"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:orientation="horizontal">
<TextView
android:id="#+id/retail"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="30dp"
android:text="Abc Retail"
android:textSize="10sp" />
<View
android:layout_width="170dp"
android:layout_height="match_parent" />
<TextView
android:id="#+id/amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:text="25,000"
android:textColor="#color/colorDarkPink"
android:textSize="14sp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="#+id/address"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="50dp"
android:text="Abc Retail"
android:textSize="10sp" />
</android.support.v7.widget.CardView>
</LinearLayout>
Try to decrease your values
android:layout_height="50dp"
if it will not work try to decrease values in other views

custom class marquee text restarts while changing another text view in a complex layout

I have own implementation of marquee class since the user can decide the marquee behavior (No scroll, scroll once, scroll repeat) for the text in my music app. The problem arise whenever user starts to play the songs since it continuously update timer text (id:tv_playtime) in the layout.
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="#+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:clickable="true"
android:onClick="onButtonHomeClick">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
/>
<ImageView
android:layout_width="64.67dp"
android:layout_height="25.33dp"
android:layout_alignParentTop="true"
android:layout_marginLeft="2dp"
android:background="#null"
android:duplicateParentState="true"
android:scaleType="fitStart"
android:visibility="gone" />
</RelativeLayout>
<!--home buttons-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Media Player"
android:textColor="#color/white"
android:textSize="20dp" />
<ImageView
android:id="#+id/iv_settings_btn_passenger"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
<!--media player home-->
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="36dp"
>
<ImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:tint="#color/white"
android:visibility="invisible" />
<ImageView
android:layout_width="36dp"
android:layout_height="36dp"
/>
<ImageView
android:layout_width="36dp"
android:layout_height="36dp"
/>
<ImageView
android:layout_width="36dp"
android:layout_height="36dp"
/>
</RelativeLayout>
<!-- playing indicator-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="370dp"
>
<RelativeLayout
android:layout_width="240dp"
android:layout_height="240dp"
android:layout_centerInParent="true"
android:layout_alignParentTop="true">
<ImageView
android:layout_width="240dp"
android:layout_height="240dp"
/>
</RelativeLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="130dp"
android:layout_marginTop="5dp">
<ImageView
android:layout_width="30dp"
android:layout_height="30dp"
android:visibility="gone"/>
<ImageView
android:layout_width="30dp"
android:layout_height="24dp"
android:visibility="gone"/>
<ImageView
android:layout_width="30dp"
android:layout_height="24dp"
android:visibility="gone"/>
<myClass.MarqueeTextView
android:id="#+id/marqueetext1"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_centerInParent="true"
android:layout_marginLeft="60dp"
android:layout_marginRight="60dp"
android:clickable="true"
android:ellipsize="marquee"
android:focusable="true"
android:marqueeRepeatLimit="0"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Song Name"
android:textColor="#android:color/white"
android:textSize="24dp" />
<myClass.MarqueeTextView
android:id="#id/marqueetext2"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_below="#+id/marqueetext1"
android:layout_centerInParent="true"
android:layout_centerVertical="true"
android:layout_marginLeft="60dp"
android:layout_marginRight="60dp"
android:clickable="true"
android:ellipsize="marquee"
android:focusable="true"
android:marqueeRepeatLimit="0"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Artist Name"
android:textColor="#android:color/white"
android:textSize="18dp" />
<myClass.MarqueeTextView
android:id="#id/marqueetext3"
android:layout_width="150dp"
android:layout_height="20dp"
android:layout_alignParentBottom="true"
android:layout_below="#+id/marqueetext2"
android:layout_marginLeft="60dp"
android:layout_marginTop="8dp"
android:clickable="true"
android:ellipsize="marquee"
android:focusable="true"
android:marqueeRepeatLimit="0"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Album Name"
android:textColor="#color/white"
android:textSize="18dp"/>
<TextView
android:id="#+id/tv_playtime"
android:layout_width="wrap_content"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_below="#+id/marqueetext2"
android:layout_marginRight="20dp"
android:layout_marginTop="8dp"
android:text="00.00"
android:textColor="#color/white"
android:textSize="18dp" />
</RelativeLayout>
</RelativeLayout>
<!--media player tracks-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="70dip"
android:visibility="gone">
<ImageView
android:layout_width="30dip"
android:layout_height="30dip"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="14dip"
/>
<myClass.MarqueeTextView
android:layout_width="match_parent"
android:layout_height="30dip"
android:layout_alignParentBottom="true"
android:layout_marginLeft="14dip"
android:layout_marginRight="5dip"
android:ellipsize="marquee"
android:marqueeRepeatLimit="0"
android:scrollHorizontally="true"
android:singleLine="true"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>
<!--mood-->
<myClass.GestureView
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<!--gestures-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="44dp"
android:layout_alignParentBottom="true"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="16dp">
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="28dp"
android:layout_alignParentBottom="true"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="28dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_marginLeft="50dp"
android:layout_marginRight="20dp"
android:text="00:00"
android:textColor="#android:color/white"
android:textSize="18dp"
android:visibility="gone" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="7dip"
android:text="03:50"
android:textColor="#android:color/white"
android:textSize="14dp"
android:textStyle="bold"
android:visibility="gone" />
<SeekBar
style="#style/seekBarMyStyle"
android:layout_width="match_parent"
android:layout_height="16dp"
android:layout_alignParentBottom="true"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:maxHeight="2dp"
android:minHeight="2dp"
android:visibility="visible" />
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="26dip"
android:layout_alignParentTop="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:shadowColor="#color/text_shadow_color"
android:shadowDx="2.5"
android:shadowDy="2.5"
android:shadowRadius="0.01"
android:text="06:18"
android:textColor="#color/white"
android:textSize="15sp"
android:textStyle="bold" />
<ImageView
android:layout_width="26dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
<ImageView
android:layout_width="26dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_toLeftOf="#id/iv_mp_battery"
android:visibility="gone" />
<ImageView
android:layout_width="26dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:visibility="gone" />
<ImageView
android:layout_width="26dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
<ImageView
android:layout_width="86dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_toLeftOf="#id/iv_mp_signal"
/>
<ImageView
android:layout_width="86dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
<ImageView
android:layout_width="86dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
<ImageView
android:layout_width="86dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
<ImageView
android:layout_width="86dip"
android:layout_height="match_parent"
android:layout_centerVertical="true"
/>
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
<LinearLayout
android:background="#color/darkbackgroundcoloralpha"
android:layout_width="match_parent"
android:layout_height="176dp"
android:layout_marginTop="50dp"
android:orientation="vertical"
android:visibility="gone" />
</FrameLayout>
I want to control the scrolling behavior of marqueetext1 here, which is working fine when the song is paused (Since timer text field is not updating).
I've tried similar problems but none of them are working for me
TextView restarts Marquee when changing another TextView in same LinearLayout
Setting of TextView stops marquee scrolling of other TextView
Android, RelativeLayout restarts Marquee-TextView when changing ImageView in same RelativeLayout
Note: Am using gestures for media player control (Next, previous, play, pause)
My assumption is its happening because of the layout since I've done a through debugging in custom Marquee class whose properties are not affecting the marquee restart here. I've override onFocusChanged, onWindowFocusChanged and isFocused methods in my derived Marquee class to make the Textview all focused.What am missing here?
My timer was overlapping on marquee text fields; so limiting the width of the timer text view solved the issue.
<TextView
android:id="#+id/tv_playtime"
android:layout_width="50dp"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_below="#+id/marqueetext2"
android:layout_marginRight="20dp"
android:layout_marginTop="8dp"
android:text="00.00"
android:textColor="#color/white"
android:textSize="18dp" />

Textview overflow

I have a layout which has and ImageView to the left, and TextView to the right:
<ImageView
android:src="#drawable/alert"
android:id="#+id/articleStoryImage"
android:layout_below="#+id/articleStorySubTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10sp"
/>
<TextView
android:id="#+id/articleStory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="#+id/articleStorySubTitle"
android:layout_toRightOf="#+id/articleStoryImage"
android:gravity="right"
android:inputType="textMultiLine"
android:text="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
android:ellipsize="end"
android:layout_marginTop="10sp"
android:textSize="11sp"
android:textColor="#000000" />
What I'm trying to do, is that the TextView text would start to the right of the ImageView,
but would continue below the ImageView. You can call it some kind of overflow.
How can I do that?
Thanks.
EDITED: FULL XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
android:orientation="horizontal" >
<TextView
android:id="#+id/articleStoryTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbb"
android:typeface="sans"
android:gravity="right"
android:ellipsize="end"
android:singleLine="false"
android:inputType="textMultiLine"
android:textSize="25sp"
android:textColor="#DBA118"
android:textStyle="bold" />
<TextView
android:id="#+id/articleStorySubTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="#+id/articleStoryTitle"
android:gravity="right"
android:inputType="textMultiLine"
android:text="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbb"
android:ellipsize="end"
android:layout_marginTop="10sp"
android:textSize="12sp"
android:textColor="#000000"
android:textStyle="bold" />
<ImageView
android:src="#drawable/alert"
android:id="#+id/articleStoryImage"
android:layout_below="#+id/articleStorySubTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10sp"
/>
<TextView
android:id="#+id/articleStory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="#+id/articleStorySubTitle"
android:layout_toRightOf="#+id/articleStoryImage"
android:gravity="right"
android:inputType="textMultiLine"
android:text="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
android:ellipsize="end"
android:layout_marginTop="10sp"
android:textSize="11sp"
android:textColor="#000000" />
</RelativeLayout>
I know you may get better solution but you can ckeck this :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="#+id/RelativeLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="#+id/tv"
android:layout_width="200dp"
android:layout_height="150dp"
android:layout_alignBottom="#+id/ImageView011"
android:layout_marginTop="22dp"
android:text="hi every body hi every body hi everybodyend"
android:textSize="20dp" />
<ImageView
android:id="#+id/ImageView011"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentLeft="true"
android:layout_marginTop="22dp"
android:layout_marginLeft="22dp"
android:background="#drawable/imag" />
<TextView
android:id="#+id/textView1"
android:layout_width="wrap_content"
android:layout_height="350dp"
android:layout_alignParentBottom="true"
android:text=" TextView TextView TextView TextView TextView"
android:textSize="20dp" />
</RelativeLayout>
also check this link : http://dev.androidteam.ru/snippets/textview/leadingmarginspan2

Resources