访问 ActionBar 内的视图
我正在尝试将水平进度栏添加到我的视图中,如下所示:
res/menu.xml
<item android:id="@+id/menuItemProgress"
android:title="Progress"
android:actionLayout="@layout/component_cancellable_progressbar"
android:showAsAction="always"/>
component_cancellable_progressbar.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/searchProgressWrapper"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
<ProgressBar android:id="@+id/searchProgress"
android:layout_height="30dp"
android:layout_width="150dp"
style="@style/Custom.Widget.ProgressBar.Horizontal"
android:max="100" />
<ImageView android:id="@+id/cancelSearch"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:paddingRight="8dp"
android:layout_gravity="right|center_vertical"
android:src="@android:drawable/ic_notification_clear_all"
android:scaleType="fitXY" />
</FrameLayout>
如何从操作中访问此进度栏(使其可见/不可见/进度)?
I'm trying to add an Horizontal Progress bar to my view like so:
res/menu.xml
<item android:id="@+id/menuItemProgress"
android:title="Progress"
android:actionLayout="@layout/component_cancellable_progressbar"
android:showAsAction="always"/>
component_cancellable_progressbar.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/searchProgressWrapper"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
<ProgressBar android:id="@+id/searchProgress"
android:layout_height="30dp"
android:layout_width="150dp"
style="@style/Custom.Widget.ProgressBar.Horizontal"
android:max="100" />
<ImageView android:id="@+id/cancelSearch"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:paddingRight="8dp"
android:layout_gravity="right|center_vertical"
android:src="@android:drawable/ic_notification_clear_all"
android:scaleType="fitXY" />
</FrameLayout>
How do I access this ProgressBar from within an Action (To make it Visisble / Invisible / Progress) ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
可以获得操作项的视图。
但是,请注意,有时操作项会出现在溢出菜单内,因此您可能会得到一个空值。
那么,你该怎么做呢?
这是一个示例代码:
这是在 android 4.1.2 和 android 2.3.5 上使用 actionBarSherlock 库时进行测试的。
另一种选择是使用更广泛的方式,在 showcaseView 库上使用,此处 。
it is possible to get the view of the action item.
however, do note that sometimes action items get to be inside the overflow menu so you might get a null instead.
so, how can you do it?
here's a sample code:
this was tested when using actionBarSherlock library, on android 4.1.2 and android 2.3.5 .
another alternative is to use a more extensive way , used on the showcaseView library, here .
onCreate() 之后您可以像平常一样通过 findViewById() 访问它。问题是由其他原因引起的。
onCreate() and after you can simply access it via findViewById() like normal. Problem was caused by something else.
您可以覆盖 onCreateOptionsMenu 并在那里捕获您的视图:
或者通过搜索 id
View v = (View) menu.findItem(R.id.search).getActionView();
我插入了一个自定义下拉菜单在操作栏中,并能够通过这种方式获得对其的控制。
You can override onCreateOptionsMenu and catch your view there:
or by searching the id
View v = (View) menu.findItem(R.id.search).getActionView();
I inserted a custom drop down menu in the action bar and was able to gain control of it this way.
以下是 actionBar 的非常有用的链接。希望您能够实现您想要的。
http://thiranjith.wordpress.com/ 2011/07/15/actionbar-design-pattern-example-for-android/
然后从您的活动控制您的进度条,如下所示。
Following is a very helpful link for actionBar.Hope you will able to implement what you want.
http://thiranjith.wordpress.com/2011/07/15/actionbar-design-pattern-example-for-android/
Then from your activity control your progressbar like following.