使用GDK(或以其他方式),有没有办法显示类似于连接到Glass上的WiFi网络时显示的进度指示器? (显示屏底部的"旋转"线,类似于此视频的结尾:https://www.youtube.com/watch?v=g3ncmeGaKN0)
谢谢!
答案 0 :(得分:25)
UPD 04.11.2014:
Google发布了适用于此的Slider
- UX组件。您应该更好地使用它而不是提取的项目。
我从GlassHome.apk中提取了Google Glass Progress Bar,并根据它创建了一个库项目:https://github.com/pif/glass-progress-bar
在repository中的自述文件中描述了用法。
是的,每个人都在等待一套全功能的Glass Views。
更新:我也提取了MessageDialog。你可以在同一个图书馆找到它。
答案 1 :(得分:3)
这非常接近,但颜色是关闭的(蓝色/蓝绿色/任何而不是白色)。
style="?android:attr/progressBarStyleHorizontal"
示例(通过OkGlassFindACat):
<ProgressBar
android:id="@+id/someProgressBar"
style="?android:attr/progressBarStyleHorizontal"
android:indeterminate="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
我绝对不知道如何覆盖这种颜色。
答案 2 :(得分:3)
我知道我迟到了,但这是我的版本:)。
https://github.com/prt2121/glass-gdk-progressbar
在gradle文件中添加您的项目
compile 'com.github.prt2121:ProgressBar:1.0@aar'
截图:
改变颜色
app:progress_color="@android:color/holo_blue_bright"
答案 3 :(得分:3)
谷歌使用滑块(全球用户体验组件)https://developers.google.com/glass/develop/gdk/slider
解决了此问题答案 4 :(得分:2)
GDK会自动覆盖某些小部件的主题,以提供类似Glass的外观,例如TextView
。对于尚未拥有该主题的小部件,请file an issue在此处,以便我们对其进行跟踪。
答案 5 :(得分:1)
我把上面的答案放在一起,为我的卡片列表加载器活动创建一个总体布局。这是布局文件card_scroll_with_progress_layout.xml
:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black">
<com.google.android.glass.widget.CardScrollView
android:id="@+id/card_scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ProgressBar
android:id="@+id/progress_bar"
style="?android:attr/progressBarStyleHorizontal"
android:indeterminate="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
</FrameLayout>
然后在onCreate中我得到进度条并将其设置为滚动:
View rootLayout = getLayoutInflater()
.inflate(R.layout.card_scroll_with_progress_layout, null);
mProgressBar = (ProgressBar)rootLayout.findViewById(R.id.progress_bar);
mProgressBar.setVisibility(View.VISIBLE);
mCardScrollView = (CardScrollView)rootLayout
.findViewById(R.id.card_scroll_view);
mCardScrollView.setAdapter(mAdapter);
setContentView(rootLayout);
稍后在我的加载器回调中,我隐藏了进度条并激活了卡片滚动视图:
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
if (loader.getId() == mLoaderId) {
mAdapter.swapCursor(data);
mProgressBar.setVisibility(View.GONE);
mCardScrollView.activate();
}
}
这似乎可以很好地作为处理各种json加载到GDK中的卡列表的范例。
答案 6 :(得分:0)
我们遇到了类似的问题,并找到了适用于我们的混合方法。我们使用上一篇文章中提到的标准进度条@patridge,并应用Android Holo Colors提供的生成的Holo样式。
我们能够生成一个白色进度条图像,动画,图层和样式,看起来非常类似于内置的GDK版本。您可以通过编辑Holo Color生成的png图像的大小来增加条形的高度以匹配GDK。
您将需要项目中包含的生成文件,但这是我们之后的主题:
<style name="OurGlassTheme" parent="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen">
<item name="android:progressBarStyleHorizontal">@style/ProgressBarGlass</item>
</style>
<style name="ProgressBarGlass" parent="android:Widget.ProgressBar.Horizontal">
<item name="android:progressDrawable">@drawable/glass_progress_horizontal_holo_light</item>
<item name="android:indeterminateDrawable">@drawable/glass_progress_indeterminate_horizontal_holo_light</item>
<item name="android:minHeight">16dip</item>
<item name="android:maxHeight">16dip</item>
</style>
我知道这是非常繁琐的,但它让我们在那里,而@giladgo接受提交给Glass开发人员提交GDK进度条已经完成。
答案 7 :(得分:0)
尝试使用zoom-in
项目中的ProgressBar。