पर टूलबार को कितना ढहना चाहिए, मैं ListView
और इसके संबंधित DetailView
एप्लिकेशन बना रहा हूं। मेरा ListView
में आइटम हैं जो क्लिक किए गए हैं यदि उपयोगकर्ता को DetailViewActivity
पर ले जाएं।संकुचित टूलबार: सेट करें कि टूलबार
DetailViewActivity
पर, मैंने एक Collapsible टूलबार लागू किया है। अब, हर बार DetailViewActivity
खोला जाता है, एक अलग छवि (विभिन्न आयामों के साथ) को संकुचित टूलबार में ImageView
पर सेट किया जाता है।
मुझे लगता है कि Toolbar
डिफ़ॉल्ट रूप से एक निश्चित ऊंचाई तक खुला होना चाहिए (256 डीपी कहें), लेकिन यदि छवि की ऊंचाई उससे अधिक है, तो उपयोगकर्ता शेष छवि को देखने के लिए नीचे खींचने में सक्षम होना चाहिए। (वास्तव में Whatsapp की तरह)
मैं प्रोग्राम के रूप में Toolbar
हर बार मैं गतिविधि को खोलने की ऊंचाई निर्धारित करने के लिए प्रबंधित किया है, लेकिन समस्या यह Toolbar
हमेशा पूरी तरह से विस्तार होता है, है। तो यदि छवि बड़ी है, तो डिफ़ॉल्ट रूप से टूलबार बहुत बड़ा है। मैं छवि की ऊंचाई के बावजूद इसे 256 डीपी तक गिराना चाहता हूं।
मेरी लेआउट के लिए कोड है:
<RelativeLayout
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.support.design.widget.CoordinatorLayout
android:id="@+id/rootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="@dimen/app_bar_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsingToolbarLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="@dimen/expanded_toolbar_title_margin_start"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/background_navdrawer"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.7"/>
<View
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="130dp"
android:background="@drawable/gradient_header_background"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.1"/>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/detail_nested_scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<FrameLayout
android:id="@+id/detail_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:ignore="MergeRootFrame"/>
</android.support.v4.widget.NestedScrollView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="12dp"
android:orientation="vertical"
app:layout_anchor="@+id/appbar"
app:layout_anchorGravity="bottom">
<View
android:id="@+id/toolbar_shadow_transparent"
android:layout_width="match_parent"
android:layout_height="@dimen/toolbar_elevation"
android:background="@color/transparent"/>
<View
android:id="@+id/toolbar_shadow"
android:layout_width="match_parent"
android:layout_height="@dimen/toolbar_elevation"
android:background="@drawable/dropshadow"/>
</LinearLayout>
<com.github.clans.fab.FloatingActionButton
android:id="@+id/action_edit"
style="@style/MenuButtonsStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:src="@drawable/ic_edit"
app:layout_anchor="@+id/appbar"
app:layout_anchorGravity="bottom|right|end"/>
</android.support.design.widget.CoordinatorLayout>
<ImageView
android:id="@+id/detail_back_arrow_land"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"/>
<TextView
android:id="@+id/course_name_textview"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="gone"/>
</RelativeLayout>
और मेरी गतिविधि में, मैं ऊंचाई मिल गया और Toolbar
इस तरह के लिए यह निर्धारित किया है:
appBar = (AppBarLayout) findViewById(R.id.appbar);
CoordinatorLayout.LayoutParams lp = (CoordinatorLayout.LayoutParams) appBar.getLayoutParams();
lp.height = my_bitmap.getHeight();
DetailActivity.appBar.setLayoutParams(lp);
DetailActivity.mImageView.setImageBitmap(my_bitmap);
मैं अपने पी बनाने के लिए स्क्रीनशॉट संलग्न कर रहा हूँ ओंट स्पष्ट है।
यह वास्तव में कैसे लंबा मैं अपनी टूलबार गतिविधि का शुभारंभ हो जाता है हर बार होना चाहते है:
और यही मैं अपने कोड से मिलता है:
अब, मैं कोड में 256 डीपी तक ऊंचाई को हार्डकोड कर सकता है, लेकिन फिर उपयोगकर्ता शेष छवि को देखने के लिए नीचे स्क्रॉल करने में सक्षम नहीं होगा। कृपया सुझाव दे।
आपकी प्रतिक्रिया के लिए धन्यवाद। कोई भी प्रतिक्रिया मुझे शुरू कर सकती है
सुंदर कीबोर्ड) –