我目前正在探索一个类似于BottomSheetBehaviourGoogle地图中使用的复杂UI ,其中可以将项目从折叠状态设置为展开状态.这两个状态之间的转换是使用TransitionManager框架的场景转换,并且工作得非常好.
我现在正在探索一种将扩展视图再次拖动到折叠状态的方法,反之亦然,但我没有找到任何明显的方法来手动进行场景转换.
我需要的是:Transition.setAnimatedFraction(0.5f)
基于用户在两个州之间拖动的百分比.
这里有没有人知道如何实现这一目标?
android android-animation android-layout android-transitions material-design
我正在开发一款强烈使用ViewPagerWidget 的平板电脑应用程序.我也同时在屏幕上有多个Viewpagers.
现在我遇到了以下问题:如果一个ViewPager滚动到下一个/上一个页面,它(当然)必须重新计算它的布局并添加/删除视图.我注意到requestLayout调用直到视图层次结构的顶部,因此使我在平板电脑屏幕上的所有视图无效(这很多!).这非常昂贵.
我现在的问题是:是否有可能围绕ViewPager实现一个Frame,它执行初始Layout,然后不会在View Hierarchy上传播布局请求,因为我知道在初始布局之后,框架保持相同的大小并且将会没变.
我提出了下面的框架,但它不能很好地工作,因为它不能100%的时间工作.
public class MyFrame extends FrameLayout
{
// VARIABLE CONTROLLING THE DISPATCH OF THE LAYOUT
// REQUEST UP THE VIEW HIERARCHY
private boolean doLayout = true;
public MyFrame(Context context)
{
super(context);
doLayout = true;
}
@Override
public void requestLayout()
{
if (doLayout) // DO THE LAYOUT REQUEST UP TO THE TOP
super.requestLayout();
else
{
// JUST MEASURE MYSELF AND MY CHILDREN
measure(MeasureSpec.getMode(MeasureSpec.AT_MOST),
MeasureSpec.getMode(MeasureSpec.AT_MOST)); …Run Code Online (Sandbox Code Playgroud) android android-widget android-custom-view android-layout android-viewpager
我现在有一个相当复杂的应用程序,我想要包含一个应用程序小部件.到目前为止工作正常,一切都是使用内容提供商,服务和配置实用程序设置的.
现在......我希望能够在第一次初始配置后再次重新配置我的小部件.所以我的猜测只是使用PendingIntent和.getActivity()再次启动我的配置活动.到目前为止工作正常!
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_news_layout);
Intent config_intent = new Intent(context.getApplicationContext(), NewsWidgetConfigure.class);
config_intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mappWidgetId);
config_intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent conf_penIntent = PendingIntent.getActivity(context, mappWidgetId, config_intent,
PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.settings_button, conf_penIntent);
Run Code Online (Sandbox Code Playgroud)
现在......问题是,我的配置活动重新启动会带回整个应用程序,这意味着在"返回"之后 - 按下,以及在我的Configuration.finish()之后,用户返回到应用程序,而不是主屏幕.
我确信这个问题与launchModes或Intent Flags有关......但我现在无法掌握它并且它让我烦恼了好几个小时.
在此先感谢您的帮助.
android ×2