我试图显示一个FragmentDialog(创建并显示为一个未添加为视图层次结构中的内容的对话框),其中有一个ViewPager,其内容由FragmentPagerAdapter给出(提供由图像组成的片段).
从FragmentActivity显示ViewPager + FragmentPagerAdapter时,代码非常完美,但从FragmentDialog执行此操作时会出现以下异常:
"IllegalArgumentException:找不到片段SimpleFragment的id 0x7f040077的视图......"
这是我的代码:
一个SherlockFragmentActivity,带有一个按钮,用于创建和显示对话框.
public class BorrameActivity extends SherlockFragmentActivity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.one_act);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
showTheDialog();
}});
}
private void showTheDialog(){
AchGalleryDialog newFragment = AchGalleryDialog.newInstance(achs);
newFragment.show(getSupportFragmentManager(), "dialog");
}
Run Code Online (Sandbox Code Playgroud)
FragmentDialog:
public class AchGalleryDialog extends DialogFragment{
public AchGalleryDialog(){
}
public static AchGalleryDialog newInstance(){
AchGalleryDialog f = new AchGalleryDialog();
return f;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater …Run Code Online (Sandbox Code Playgroud) android android-fragments android-viewpager fragmentpageradapter android-nested-fragment
我正在使用CollapsingToolbarLayout,里面有两个图像,一个用于背景,一个用作上部徽标.我们的想法是让它们成为视差.这个东西在物理设备的Android 5中运行良好,但在具有较低版本的设备(或仿真器)中不行.有点奇怪.
这是我的布局:
<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">
<NestedScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" >
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#fff">
<!--content-->
</FrameLayout>
</NestedScrollView>
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="400dp"
android:background="#222">
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll">
<ImageView
android:id="@+id/header_bk"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/background"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.7"
/>
<ImageView
android:id="@+id/header_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/ic_logo"
app:layout_collapseMode="parallax"
android:background="#44ff0000"
/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud) android android-design-library android-coordinatorlayout android-collapsingtoolbarlayout
我尝试使用JDO从端点v1迁移到谷歌云项目到v2.我已经按照迁移指南和一些解决方案来尝试使数据核心插件增强我的类,并将它们上传到谷歌云,但没有运气.
我将发布build.gradle,然后在客户端尝试连接到端点时返回服务器错误,这是一个NoClassFound错误.
的build.gradle:
buildscript {
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
// App Engine Gradle plugin
classpath 'com.google.cloud.tools:appengine-gradle-plugin:1.3.3'
// Endpoints Frameworks Gradle plugin
classpath 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.2'
}
}
repositories {
mavenCentral();
jcenter()
}
apply plugin: 'java'
apply plugin: 'war'
// [START apply_plugins]
apply plugin: 'com.google.cloud.tools.appengine'
apply plugin: 'com.google.cloud.tools.endpoints-framework-server'
// [END apply_plugins]
dependencies {
compile ('com.google.endpoints:endpoints-framework:2.0.8') {
exclude group: 'com.google.guava', module: 'guava-jdk5'
}
compile 'javax.servlet:servlet-api:2.5'
compile 'com.ganyo:gcm-server:1.0.2'
compile 'javax.jdo:jdo-api:3.0.1'
compile 'org.datanucleus:datanucleus-core:3.1.3'
compile 'org.datanucleus:datanucleus-api-jdo:3.1.3'
compile 'org.datanucleus:datanucleus-accessplatform-jdo-rdbms:4.1.1'
compile 'com.google.appengine.orm:datanucleus-appengine:2.1.2'
compile 'com.google.code.gson:gson:2.2.4'
compile 'org.apache.commons:commons-lang3:3.5' …Run Code Online (Sandbox Code Playgroud) java google-app-engine android google-cloud-storage google-cloud-platform
我的目标是在片段之间创建内容转换,其中Fade()和Slide()仅应用于片段上的一个视图。执行过渡(在这种情况下为exitTransition)时,视觉效果是视图被复制,一个副本滑动,另一个副本淡化,而不是视图同时滑移和褪色。
一些代码:
Fragment currentFragment = getSupportFragmentManager().getFragments().get(0);
Fragment fragment = EmailSearchFragment.newInstance();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
fragment.setEnterTransition(new Slide(Gravity.RIGHT));
currentFragment.setExitTransition(TransitionInflater.from(this).inflateTransition(R.transition.slide_and_fade));
}
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, fragment)
.addToBackStack(null)
.commit();
Run Code Online (Sandbox Code Playgroud)
这里是过渡:
public class DetailsTransition extends TransitionSet {
public DetailsTransition() {
init();
}
/**
* This constructor allows us to use this transition in XML
*/
public SlideAndFadeTransitionSet(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
private void init() {
setOrdering(ORDERING_TOGETHER);
addTransition(new Fade()).
addTransition(new Slide(Gravity.TOP));
}
}
Run Code Online (Sandbox Code Playgroud)
并且,这里的xml以过渡的单一视图为目标:
<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android" class="com.adidas.connect.app.transition.DetailsTransition">
<targets>
<target …Run Code Online (Sandbox Code Playgroud)