我试图获得与谷歌播放中看到的相似的效果.
我有以下布局,以显示一个透明的工具栏,后面有一个图像.当用户滚动时,在图像视图滚动离开屏幕时会出现视差效果.当用户向上滚动时,工具栏会返回,只有当用户到达列表的lop时,imageview才会返回.
一切都很好.
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<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.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:background="@color/background_material_dark">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsingToolbarLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="?attr/actionBarSize"
app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"
app:statusBarScrim="#09b"
app:contentScrim="#09f">
<ImageView
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/location_banner"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.7"
/>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_height="?attr/actionBarSize"
android:layout_width="match_parent"
app:layout_collapseMode="pin"
android:fitsSystemWindows="true"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
当我将windowTranslucentStatus设置为true时.视图中的内容向上移动到状态栏下方,但CollapsingToolbarLayout的内容向上移动状态栏高度的两倍(CollapsingToolbarLayout保持正确的高度).
这意味着图像顶部的某些部分被切断,操作栏现在显示在状态栏下方而不是在其下方.作为一个副作用,现在在CollapsingToolbarLayout底部的填充与状态栏的高度相同
这是没有windowTranslucentStatus的样子.这里的一切都很好
windowTranslucentStatus设置为true
用户从列表中的较低位置向上滚动(不在顶部)
android statusbar android-actionbar android-coordinatorlayout android-collapsingtoolbarlayout
1.TabLayout
- tab1 (Fragment1)
- tab2 (Fragment2)
- tab3 (Fragment3)
* RecyclerView + CardView (OnClick)
Run Code Online (Sandbox Code Playgroud)
上 CardView
ClickListner上打开tab3中的另一个片段.那么如何在tab3中打开片段.
错误在于getFragmentManager()
:
FragmentTransaction transaction = getFragmentManager().beginTransaction();
Run Code Online (Sandbox Code Playgroud)
而不是这样,我试过:
FragmentTransaction transaction = activity.getFragmentManager().beginTransaction();
FragmentTransaction transaction = itemview.getContext().getFragmentManager().beginTransaction();
Run Code Online (Sandbox Code Playgroud)
但错误并未解决.
这是我的代码:
public class CardAdapter extends RecyclerView.Adapter<CardAdapter.ViewHolder> {
List<NatureItem> mItems;
private int lastPosition = -1;
Context context;
TaskFragment main;
public CardAdapter(Context context,TaskFragment ma)
{
this.context=context;
main=ma;
}
public CardAdapter() {
super();
mItems = new ArrayList<NatureItem>();
NatureItem nature = new NatureItem();
nature.setName("The Paris Attack 2015");
nature.setDes("Lorem ipsum …
Run Code Online (Sandbox Code Playgroud) android android-fragments android-viewholder android-recyclerview
我用a RecyclerView
来显示我的抽屉列表项目Navigation Drawer
.OnClick
抽屉列表项目,我能够打开不同的活动,但我希望能够打开将取代主要活动布局的片段.
有没有办法做到这一点?
public class AdapterClass extends RecyclerView.Adapter<AdapterClass.MyViewHolder> {
private LayoutInflater inflater;
private Context context;
List<Information> data = Collections.emptyList();
public AdapterClass(Context context, List<Information> data) {
this.context = context;
inflater = LayoutInflater.from(context);
this.data = data;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = inflater.inflate(R.layout.custom_row, parent, false);
MyViewHolder holder = new MyViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
Information current = data.get(position);
holder.title.setText(current.title);
holder.icon.setImageResource(current.iconId);
}
@Override
public …
Run Code Online (Sandbox Code Playgroud) onContentSizeChange
在Android上似乎无法正常启动.事件被触发mount
,但不会在text height
更改时触发.相同的代码适用于iOS:
<TextInput
editable = {true}
multiline = {true}
[...]
onContentSizeChange={(event) => {
this.setState({height: event.nativeEvent.contentSize.height});
}}
style={{height: Math.max(35, this.state.height)}}
/>
Run Code Online (Sandbox Code Playgroud) 我试图用adb install安装apk但是当我尝试安装它时出现以下错误,
失败[INSTALL_FAILED_INVALID_APK:无法在/data/app/conform.src.com.conform-1中安装软件包:缺少软件包/data/app/conform.src.com.conform-1/base.apk代码]
我正在使用Butterknife为工具栏注入视图.但该方法getSupportActionBar(toolbar)
抛出空指针异常,不幸的是app停止了.可以做些什么来解决这个问题?我使用的是Android 4.2.那么,使用Butterknife和Jellybean有什么问题吗?
主要活动
public class MainActivity extends AppCompatActivity {
@BindView(R.id.tool_bar_demo)
Toolbar toolbar;
@BindDrawable(R.drawable.backspace)
Drawable backspace_btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
setSupportActionBar(toolbar);
toolbar.setTitle("ABC");
}
}
Run Code Online (Sandbox Code Playgroud)
activity_main
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="58dp"
android:id="@+id/tool_bar_demo"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:titleTextColor="@color/colorAccent"
/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
gradle这个
minSdkVersion 15
targetSdkVersion 23
apply plugin: 'com.neenbedankt.android-apt'
compile 'com.android.support:design:23.4.0'
compile 'com.jakewharton:butterknife:8.0.1'
apt 'com.jakewharton:butterknife-compiler:8.0.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
Run Code Online (Sandbox Code Playgroud) <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/background_light"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/main_appbar"
android:layout_width="match_parent"
android:layout_height="400dp"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/main_collapsing"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleTextAppearance="@android:color/transparent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:title="">
<fragment xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.mydermacy.www.beyou.activities.CompareClinicsActivity" />
<android.support.v7.widget.Toolbar
android:id="@+id/main_toolbar_clinics"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<android.support.v7.widget.RecyclerView
android:id="@+id/rc_clinic_compare"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:behavior_overlapTop="184dp"
android:background="@color/background" />
</android.support.v4.widget.NestedScrollView>
<!--app:layout_behavior="@string/appbar_scrolling_view_behavior" />-->
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
我有布局CoordinatorLayout
作为rootview,里面我有两个子视图AppBarLayout
和NestedScrollView
.我无法进行平滑滚动.可以做些什么来实现平滑滚动?
我正在开发一个网络视图。在附加文件时,文件选择器仅适用于图库,但不适用于相机。当我点击附加文件时,应用程序会显示图库和相机的选项。但是当我选择相机时什么也没有发生。我发现其他几个来源也有几乎类似的问题。但解决方案对我没有帮助。
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
if (requestCode != INPUT_FILE_REQUEST_CODE || mFilePathCallback == null) {
super.onActivityResult(requestCode, resultCode, data);
return;
}
Uri[] results = null;
// Check that the response is a good one
if (resultCode == Activity.RESULT_OK) {
if (data == null) {
// If there is not data, then we may have taken a photo
if (mCameraPhotoPath != null) {
results = new Uri[]{Uri.parse(mCameraPhotoPath)};
}
} else {
String …
Run Code Online (Sandbox Code Playgroud) android ×8
android-collapsingtoolbarlayout ×1
apt-get ×1
butterknife ×1
linux-mint ×1
react-native ×1
statusbar ×1
upgrade ×1
webview ×1