小编Roa*_*ock的帖子

获取对容器视图的视图控制器的引用

我有一个viewController,它包含一个ContainerView(它正在设置一个ViewController).我正在设置一个segue,在prepareforsegue方法中,我希望获得一个嵌入在容器View中的viewController的引用.我怎么做.我知道使用segue.destinationViewController我们可以获得对UIViewController的引用,但我还想设置ContainerView指向的viewController.

uiviewcontroller ios container-view

14
推荐指数
1
解决办法
1万
查看次数

获取对容器视图视图的引用

我是iOS App Development的新手.我连接了一个tableview控制器,这样当我选择其中一行时,我会使用didSelectRowAtIndexPath获得另一个UIViewController.我在这个UIViewController中有一个容器视图,它显示(当然是)调用didSelectRowAtIndexPath的行的索引.我想用segue来做这个,但问题是我不知道如何获得对使用容器视图形成的视图控制器的引用.我知道你可以在prepareForSegue中使用segue.destinationViewController获取目标View Controller但是如何获得对由于容器视图而将加载的视图控制器的引用.我正在构建适用于iOS 6的应用程序.此外,我还使用了Storyboard作为UI.谢谢

编辑:

这个问题基本上归结为如何获得UIViewController-2的引用,该引用由UIVonConiner-1内部的UIContainerView指向.通过选择一行UITableViewController来触发UIViewController-1

UITableViewController(选择要给出的行)---> UIViewController-1,其中包含.... ContainerView ---> UIViewController-2(与ContainerView关联的ViewController).

objective-c uiviewcontroller ios segue uistoryboardsegue

12
推荐指数
1
解决办法
2万
查看次数

工具栏在状态栏下滚动

我正在尝试学习CoordinatorLayout及其功能.我已经将它与AppBarLayout结合使用了.我的xml如下:

<android.support.design.widget.CoordinatorLayout

android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>

    <android.support.design.widget.AppBarLayout
        android:id="@+id/appBarLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
            app:layout_scrollFlags="scroll|enterAlways" />

    </android.support.design.widget.AppBarLayout>

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_gravity="bottom|end"
        style="@style/FabStyle"/>

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

我面临的问题是滚动工具栏位于状态栏下方.我想滚动Recycler View时工具栏滚动,但我不希望它在状态栏下面.我该如何防止这种情况发生.

此外,当我尝试将CoordinatorLayout封装在另一个布局中时,例如:LinearLayout,主题中定义的primaryDark颜色不会显示在状态栏中.当我使用它作为上面的xml时,它显示了primaryDark颜色.有一个更好的方法吗?

android android-toolbar android-coordinatorlayout android-appbarlayout

12
推荐指数
2
解决办法
8343
查看次数

Android Studio未在编译时检测支持库

由于Android Studio将成为Android开发的默认IDE,因此我决定将现有项目迁移到Android-studio.项目结构似乎不同,我的项目中的文件夹层次结构如下:

Complete Project
 ->.idea
 -> build
 -> Facebook SDK
 -> MainProject
 -> ... (Other Libraries)
 build.gradle
 local.properties
 settings.gradle
 ...
External Libraries
 -> Android API 8 Platform
 -> Android API 18 Platform
 -> Android API 19 Platform
 -> 1.7 Java
 -> support-v4-19.1.0
Run Code Online (Sandbox Code Playgroud)

我的MainProject有一个libs文件夹,其中包含项目中使用的不同jar.令人惊讶的是,它不包含我的eclipse项目中存在的android-support-v4 jar.因此,似乎根目录下的外部Libraries文件夹必须处理它.

但是在导入之后,当我尝试编译项目时,开始为所有与android支持库相关的某些类抛出"Symbol not found error".

例如:Android Studio中的自动完成功能为我提供了来自android.support.v4.app.NotificationCompat的NotificaitonCompat的建议,但当我尝试编译我的项目模块时,它说

错误:(17,30)错误:找不到符号类NotificationCompat错误:任务':app:compileDebugJava'执行失败.>编译失败; 请参阅编译器错误输出以获取详细信

对于相同的支持库,这也发生在许多其他类中.我试图插入一个jar并在mainProject的build.gradle中更改了相同的内容,但错误仍然存​​在.

我甚至尝试重新启动并再次构建项目,但没有任何改变.

编辑:我在主项目中附加Gradle文件

MainProject模块中的build.gradle

apply plugin: 'com.android.application'

android {
compileSdkVersion 19
buildToolsVersion "21.1.2"

defaultConfig {
    applicationId "package.app"
    minSdkVersion 8
    targetSdkVersion 19
}

buildTypes {
    release {
        minifyEnabled false …
Run Code Online (Sandbox Code Playgroud)

java eclipse android android-studio

5
推荐指数
1
解决办法
4473
查看次数

React Native 动画回调

我是本地反应新手,所以这个问题可能看起来微不足道。它与将函数作为参数传递有更多关系,我对粗箭头函数与将函数作为直接参数传递感到困惑。我使用 Animated.View 来制作动画,并编写了一个用于动画值的通用函数,如下所示:

animateToFadeState(stateName, newStateValue, onAnimEndCallback) {
  const hasCallback = onAnimEndCallback !== undefined;
  Animated.timing(stateName, {
    toValue: newStateValue,
    duration: 3000
  }).start(
      hasCallback ? this.onAnimEndCallback() : null;
  );
}
Run Code Online (Sandbox Code Playgroud)

在这里,您可以将 stateName 传递给 animate 和 newState 以及可选的回调。我面临的问题是如何传递回调,因为它需要一个粗箭头函数作为参数传递。

我认为有多种方法可以调用这个函数(所有方法的不同之处在于传递回调函数的方式)。

  1. animateToFadeState(this.state.abc, 1, () => {this.myFunction()})
  2. animateToFadeState(this.state.abc, 1, this.myFunction())
  3. animateToFadeState(this.state.abc, 1, () => this.myFunction())
  4. animateToFadeState(this.state.abc, 1, this.myFunction)

这些似乎都不起作用,因为我的回调在动画开始时立即被调用。我不太明白这里出了什么问题,也不确定传递函数与粗箭头函数之间的区别。

javascript animation callback react-native

5
推荐指数
1
解决办法
8117
查看次数

编码/将大整数压缩为字母数字值

我有一个非常大的12-14位整数,我想将其加密/压缩为一个字母数字值,以便稍后可以从字母数字值恢复整数.我尝试使用62 base转换此整数并尝试将这些值映射到a-zA-Z0-9,但是由此生成的值是7个字符长.这个长度仍然足够长,我想转换为大约4-5个字符.

是否有一般方法来执行此操作或某些方法可以这样做,以便仍然可以恢复整数?我在这里问数学方面,但我会用PHP编程,最近我开始用php编程.

编辑:

我正在考虑分配一个掩码位并以一种方式使用它来生成更少数量的Chars.我知道范围是不够的,这就是我专注于使用数学技巧或表达方式的原因.62基地是我已经应用但尚未解决的想法.

php encoding

4
推荐指数
1
解决办法
2003
查看次数

android中共享元素顶部的内容转换

我正在尝试使用 Android 中的 SharedElements 和 Content Transitions。我试图结合 Content Transitions 和 Shared Elements 并创建一个特定的动画,但是我遇到了一个问题。在共享元素 (ImageView) 上的过渡结束后,我使用内容过渡将文本视图动画化到使用幻灯片过渡的位置。然而,当 textViews 从底部滑动到它们在图像视图顶部的位置时,文本会在 ImageView(共享元素)下方,然后才出现在 ImageView 的顶部。有没有办法做到这一点?

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

我在这里分享一个简短的代码,其中包含一些解释这一点的屏幕截图:

Activity_A.java

package com.example.mehulp.sharedelementsviewheirarchy;

import android.app.Activity;
import android.app.ActivityOptions;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;


public class Activity_a extends Activity {
ImageView imageView_a;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_activity_a);

    imageView_a = (ImageView) findViewById(R.id.imgView_a);
    imageView_a.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            imageClickListener();
        }
    });
}

private void imageClickListener() {
    Intent intent = new Intent(Activity_a.this, Activity_b.class);
    startActivity(intent, …
Run Code Online (Sandbox Code Playgroud)

android android-transitions shared-element-transition android-5.1.1-lollipop

4
推荐指数
1
解决办法
2302
查看次数