diff --git a/.idea/misc.xml b/.idea/misc.xml index e0d5b93..51fa3e5 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -5,7 +5,7 @@ diff --git a/app/build.gradle b/app/build.gradle index 302d4d4..62431a2 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -20,9 +20,10 @@ android { } dependencies { + implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:28.0.0' - implementation 'com.android.support.constraint:constraint-layout:1.1.3' + implementation 'androidx.appcompat:appcompat:1.0.2' + implementation 'androidx.constraintlayout:constraintlayout:1.1.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' diff --git a/app/src/main/java/com/iammert/readablebottombar/MainActivity.kt b/app/src/main/java/com/iammert/readablebottombar/MainActivity.kt index 9befd73..e4a39ec 100644 --- a/app/src/main/java/com/iammert/readablebottombar/MainActivity.kt +++ b/app/src/main/java/com/iammert/readablebottombar/MainActivity.kt @@ -1,7 +1,7 @@ package com.iammert.readablebottombar -import android.support.v7.app.AppCompatActivity import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity import com.iammert.library.readablebottombar.ConfigurationXmlParser class MainActivity : AppCompatActivity() { diff --git a/library/build.gradle b/library/build.gradle index 7f2f9d8..f607a7d 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -28,7 +28,7 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'com.android.support:appcompat-v7:28.0.0' + implementation 'androidx.appcompat:appcompat:1.0.2' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' diff --git a/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItem.kt b/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItem.kt index 37dd5d9..bb419c5 100644 --- a/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItem.kt +++ b/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItem.kt @@ -1,14 +1,14 @@ package com.iammert.library.readablebottombar import android.graphics.drawable.Drawable -import android.support.annotation.ColorInt +import androidx.annotation.ColorInt import com.iammert.library.readablebottombar.ReadableBottomBar.ItemType data class BottomBarItem( - val index: Int, - val text: String, - val textSize: Float, - @ColorInt val textColor: Int, - val drawable: Drawable, - val type: ItemType + val index: Int, + val text: String, + val textSize: Float, + @ColorInt val textColor: Int, + val drawable: Drawable, + val type: ItemType ) \ No newline at end of file diff --git a/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItemView.kt b/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItemView.kt index 50c4682..43bb1f2 100644 --- a/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItemView.kt +++ b/library/src/main/java/com/iammert/library/readablebottombar/BottomBarItemView.kt @@ -2,8 +2,6 @@ package com.iammert.library.readablebottombar import android.content.Context import android.graphics.drawable.Drawable -import android.support.v7.widget.AppCompatImageView -import android.support.v7.widget.AppCompatTextView import android.util.AttributeSet import android.view.LayoutInflater import android.view.View @@ -11,6 +9,8 @@ import android.view.animation.AccelerateDecelerateInterpolator import android.view.animation.Animation import android.view.animation.TranslateAnimation import android.widget.FrameLayout +import androidx.appcompat.widget.AppCompatImageView +import androidx.appcompat.widget.AppCompatTextView import com.iammert.library.readablebottombar.ReadableBottomBar.Companion.ANIMATION_DURATION import com.iammert.library.readablebottombar.ReadableBottomBar.ItemType diff --git a/library/src/main/java/com/iammert/library/readablebottombar/ConfigurationXmlParser.kt b/library/src/main/java/com/iammert/library/readablebottombar/ConfigurationXmlParser.kt index 7db19ed..36d191b 100644 --- a/library/src/main/java/com/iammert/library/readablebottombar/ConfigurationXmlParser.kt +++ b/library/src/main/java/com/iammert/library/readablebottombar/ConfigurationXmlParser.kt @@ -3,7 +3,7 @@ package com.iammert.library.readablebottombar import android.content.Context import android.content.res.XmlResourceParser import android.graphics.drawable.Drawable -import android.support.v4.content.ContextCompat +import androidx.core.content.ContextCompat import org.xmlpull.v1.XmlPullParserException class ConfigurationXmlParser(private val context: Context, xmlRes: Int) { diff --git a/library/src/main/java/com/iammert/library/readablebottombar/ReadableBottomBar.kt b/library/src/main/java/com/iammert/library/readablebottombar/ReadableBottomBar.kt index dc7a185..51dd73e 100644 --- a/library/src/main/java/com/iammert/library/readablebottombar/ReadableBottomBar.kt +++ b/library/src/main/java/com/iammert/library/readablebottombar/ReadableBottomBar.kt @@ -7,6 +7,7 @@ import android.util.AttributeSet import android.view.View import android.view.ViewTreeObserver import android.widget.LinearLayout +import java.util.ArrayList class ReadableBottomBar @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : LinearLayout(context, attrs, defStyleAttr) { @@ -27,6 +28,7 @@ class ReadableBottomBar @JvmOverloads constructor(context: Context, attrs: Attri } private val bottomBarItemList: List + private val bottomBarViewItemList = ArrayList() private var tabInitialSelectedIndex = 0 private var tabBackgroundColor: Int = Color.WHITE @@ -75,12 +77,12 @@ class ReadableBottomBar @JvmOverloads constructor(context: Context, attrs: Attri bottomBarItemList = bottomBarItemConfigList.map { config -> BottomBarItem( - config.index, - config.text, - textSize, - textColor, - config.drawable, - activeItemType + config.index, + config.text, + textSize, + textColor, + config.drawable, + activeItemType ) } @@ -105,6 +107,12 @@ class ReadableBottomBar @JvmOverloads constructor(context: Context, attrs: Attri this.itemSelectListener = itemSelectListener } + fun setSelectedItem(position : Int){ + getChildViewAt(position)?.callOnClick() + } + + fun getChildViewAt(position : Int) = bottomBarViewItemList.getOrNull(position) + private fun drawBottomBarItems() { val itemContainerLayout = LinearLayout(context).apply { layoutParams = LinearLayout.LayoutParams(layoutWidth.toInt(), layoutHeight.toInt()) @@ -138,7 +146,7 @@ class ReadableBottomBar @JvmOverloads constructor(context: Context, attrs: Attri } } - + bottomBarViewItemList.add(bottomBarItem) itemContainerLayout.addView(bottomBarItem) if (item.index == tabInitialSelectedIndex) { diff --git a/library/src/main/res/layout/layout_bottombar_item.xml b/library/src/main/res/layout/layout_bottombar_item.xml index b532bfd..217486d 100644 --- a/library/src/main/res/layout/layout_bottombar_item.xml +++ b/library/src/main/res/layout/layout_bottombar_item.xml @@ -3,14 +3,14 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - -