我一直在尝试使用RecyclerView实现一个CollapsingToolbar,使用少量的指导:http://android-developers.blogspot.co.uk/2015/05/android-design-support-library.html和项目这里:https://github.com/chrisbanes/cheesesquare,我目前有以下布局:
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
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/detail_backdrop_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
android:fitsSystemWindows="true"
app:theme="@style/Toolbar"
app:contentScrim="@color/primary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<ImageView
android:id="@+id/backdrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
app:theme="@style/Toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_anchor="@id/appbar"
app:layout_anchorGravity="bottom|right|end"
android:src="@drawable/ic_directions"
android:layout_margin="@dimen/fab_margin"
android:clickable="true"/>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
来源如下:
setContentView(R.layout.activity_details_image);
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
loadImage();
CollapsingToolbarLayout collapsingToolbar =
(CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar); …Run Code Online (Sandbox Code Playgroud) 我们如何知道用户是向下滚动还是向上滚动RecyclerView?
我尝试过RecyclerView#OnScrollListener,它给出了垂直滚动量和滚动状态.滚动状态空闲时,如何在开始拖动和滚动位置时获取最后一个滚动位置.
谢谢.
我正在尝试查看设计库中是否存在任何内置动画,以创建浮动动作按钮转换为单个材质表,如材料设计图像中所示
我需要知道的真正的区别screen orientation userPortrait和portrait.什么时候用?
什么时候?
android:screenOrientation="portrait"
Run Code Online (Sandbox Code Playgroud)
什么时候?
android:screenOrientation="userPortrait"
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用SwipeDismissBehavoirfrom design support库.我列出的项目RecyclerView和刷一个项目必须解雇(如谷歌收件箱应用程序).
我已经设置了RecyclerView项目的监听器,但是SwipeDismissBehavior onDismiss监听器没有被调用.
SwipeDismissBehavior behavior = new SwipeDismissBehavior();
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams)mItemLayout.getLayoutParams();
params.setBehavior(behavior);
behavior.setListener(new SwipeDismissBehavior.OnDismissListener() {
@Override
public void onDismiss(View view) {
}
@Override
public void onDragStateChanged(int i) {
}
});
mItemLayout.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud) 我想了解使用View.getResources()和的真正区别View.getContext().getResources().
例如,我必须将颜色设置为TextView来自资源.
view.setTextColor(view.getResources().getColor(R.color.Blue));
Run Code Online (Sandbox Code Playgroud)
要么
view.setTextColor(view.getContext().getResources().getColor(R.color.Blue));
Run Code Online (Sandbox Code Playgroud)
两者都有效,但根据文件......
View.getResources() - 返回与此视图关联的资源.
View.getContext() - 返回运行视图的上下文,通过它可以访问当前主题,资源等.
欢迎你的想法......
我正在尝试submenu以NavigationView编程方式添加项目.我可以添加项目menu但不能添加submenu
添加项目到菜单工作
Menu menu = mNavigationView.getMenu();
menu.add(Menu.NONE, Menu.NONE, index, "Menu Item1");
Run Code Online (Sandbox Code Playgroud)
但是将项目添加到子菜单不起作用
Menu menu = mNavigationView.getMenu();
SubMenu subMenu = menu.addSubMenu("Sub menu title");
subMenu.add(Menu.NONE, Menu.NONE, index, "SubMenu Item1");
Run Code Online (Sandbox Code Playgroud) 该RecyclerView如果与建立搞砸Marshmallow (Android 23).
我使用RecyclerView填充的项目列表,当向右滑动将删除该项目.删除该项目工作正常.但是RecyclerView在删除项目后向上滚动会在删除的项目上方的项目上创建空白区域.
我在这里使用示例项目https://github.com/chrisbanes/cheesesquare与最新的Android版本(Marshmallow)
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.support.android.designlibdemo"
minSdkVersion 9
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
}
Run Code Online (Sandbox Code Playgroud)
并添加滑动以关闭代码
private void setItemDismiss(final RecyclerView recyclerView) {
ItemTouchHelper.SimpleCallback simpleCallback = new ItemTouchHelper.SimpleCallback(ItemTouchHelper.RIGHT, ItemTouchHelper.RIGHT) {
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
int position = viewHolder.getAdapterPosition();
((SimpleStringRecyclerViewAdapter)recyclerView.getAdapter()).removeItemAt(position);
}
};
ItemTouchHelper itemTouchHelper = …Run Code Online (Sandbox Code Playgroud) 我已进入/退出动画风格为PopupWindow这样的
mPopupWindow.setAnimationStyle(R.style.PopupAnimation);
Run Code Online (Sandbox Code Playgroud)
和风格一样
<style name="PopupAnimation" parent="Widget.AppCompat.PopupWindow">
<item name="android:windowEnterAnimation">@anim/popup_show</item>
<item name="android:windowExitAnimation">@anim/popup_hide</item>
</style>
Run Code Online (Sandbox Code Playgroud)
因此,当PopupWindow显示/隐藏时,它具有适用于Lollipop以及所有以前的Android版本的动画.但随着Marshmallow动画时间间隔后弹出窗口显示并且没有动画效果.
动画/弹出窗口show.xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="0.0"
android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1000"/>
</set>
Run Code Online (Sandbox Code Playgroud)
动画/弹出窗口hide.xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="1.0"
android:toAlpha="0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1000"/>
</set>
Run Code Online (Sandbox Code Playgroud) android android-animation android-popupwindow android-6.0-marshmallow
我正在使用android spring RestTemplate在我的应用程序上进行REST服务调用.我添加了android Instrumentation测试,其中包括模拟REST服务调用.从android studio运行时,我的所有测试运行正常,但测试无法在终端使用时加载spring mock类
./gradlew clean :app:connectedDebugAndroidTest
Run Code Online (Sandbox Code Playgroud)
spring.gradle上的spring测试依赖项
androidTestCompile("org.springframework:spring-test:3.2.8.RELEASE")
Run Code Online (Sandbox Code Playgroud)
如果我改为compile而不是androidTestCompile,Android测试从终端正常运行.由于我不希望这种依赖我的生产APK任何帮助,赞赏.
这是开始测试时的日志
08-05 00:04:12.585 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.asm.commons.JSRInlinerAdapter 08-05 00:04:12.587 22274-22302/com.libin .androiduitesting E/TestLoader:找不到类:org.springframework.asm.commons.TryCatchBlockSorter 08-05 00:04:12.593 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework. cglib.transform.AbstractProcessTask 08-05 00:04:12.593 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.cglib.transform.AbstractTransformTask 08-05 00:04:12.603 22274- 22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.core.convert.support.ConvertingPropertyEditorAdapter 08-05 00:04:12.610 22274-22302/com.libin.androiduitesting E/TestLoader:无法find class:org.springframework.core.io.ResourceEditor 08-05 00:04:12.611 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.spring framework.core.io.support.ResourceArrayPropertyEditor 08-05 00:04:12.617 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.http.MockHttpInputMessage 08-05 00:04 :12.618 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.http.MockHttpOutputMessage 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.http.client.MockClientHttpRequest 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.http. client.MockClientHttpResponse 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.jndi.ExpectedLookupTemplate 08-05 00:04:12.619 22274-22302/com.libin.androiduitesting E/TestLoader:找不到类:org.springframework.mock.jndi.SimpleNamingContext 08-05 00:04:12.619 22274-22302/com.libin.androiduitesting …
android spring-test android-espresso spring-android android-instrumentation