我正在开发我的第一个facebook应用程序.我将setExtendedAccessToken()函数与FB.Event.subscribe('auth.login')结合使用时遇到问题.
我的js代码看起来像这样:
window.fbAsyncInit = function() {
// init the FB JS SDK
FB.init({
appId : 'XXX', // App ID from the App Dashboard
channelUrl : 'http://domain.tld/app/channel.php', // Channel File for x-domain communication
frictionlessRequests: true,
cookie: true,
xfbml: true
});
FB.Event.subscribe('auth.login', function(response) {
$('#loginSpinner').show();
$('#loginFacebook').hide();
window.location = "http://domain.tld/app/?first_login";
});
};
Run Code Online (Sandbox Code Playgroud)
该auth.login事件应仅在用户首次登录时触发.此PHP代码也应仅在首次登录时触发:
// triggers on first login
if (isset($_GET['first_login'])) {
if ($me) {
$facebook->setExtendedAccessToken();
$friends = $facebook->api('/me/friends');
$friends = $friends['data'];
if (!empty($friends)) {
//sql
}
$permissions = $facebook->api("/me/permissions");
if( array_key_exists('publish_actions', …Run Code Online (Sandbox Code Playgroud) 我有RelativeLayout三个观点.两者都TextViews应该在右侧,ImageView而秒应该在第一个之下TextView.
码:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#bdbdbd"
android:paddingBottom="15dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="15dp" >
<ImageView
android:id="@+id/avatar"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_centerVertical="true"
android:src="@drawable/default_avatar" />
<TextView
android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/avatar"
android:text="Chris"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/university"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/username"
android:layout_toRightOf="@id/avatar"
android:text="Oxford"
android:textSize="13sp" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
结果: 
android:layout_centerVertical="true"从第一个TextView中删除后,一切都按预期工作(除了它不垂直).

为什么这样,我怎样才能使第一个TextView垂直居中?
我正在将给定的图像(保存在磁盘上)调整为不同的大小:
var image = 'photos/pic';
var sizes = [1440, 1080, 720, 480];
for (var i = 0; i < sizes.length; i++) {
sharp(image + '.jpg')
.resize(sizes[i], sizes[i])
.toFile(image + '-' + sizes[i] + '.jpg');
}
Run Code Online (Sandbox Code Playgroud)
这按预期工作,但我想还有改进的余地。
2000x2000. 如果有的话,从调整720x720到480x480而不是2000x2000到的速度改进480x480是什么?考虑到我必须先读取720x720文件并等待调整大小完成。$user = new User(1);
var_dump($user->ID);
if (empty($user->ID))
echo "empty";
// output string(2) "77" empty
Run Code Online (Sandbox Code Playgroud)
那么为什么true即使$uservar不为空,empty()也会返回?
我的User类的相关部分:
class User {
protected $data = null;
public function __construct($userID) {
// sql select
$this->data = $sqlResult;
}
// ...
public function __get($name) {
if (isset($this->data[$name]))
return $this->data[$name];
else
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
更新:
所以我更新了我的User类并添加了__isset()方法
public function __isset($name) {
if (isset($this->data[$name]) && !empty($this->data[$name]))
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
这引出了另一个问题:当调用empty()我的非空var时empty($user->ID),它将返回false,但是当使用isset($user->ID)声明的var为空时(例如$user->ID = '')它也将返回false,因为它 …
是否可以使用带有可绘制对象和<shape>属性的 XML 背景资源?
所以我有这个按钮
<Button
android:layout_marginRight="5dp"
android:id="@+id/send_button"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/send_button" />
Run Code Online (Sandbox Code Playgroud)
其中有一个后台send_button.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_send_white_48dp" android:state_focused="true"/>
<item android:drawable="@drawable/ic_send_white_48dp" android:state_pressed="true"/>
<item android:drawable="@drawable/ic_send_black_48dp"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
现在效果很好。但我还想在可绘制和圆角后面添加背景颜色,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corners android:radius="4dp" />
<gradient
android:angle="270"
android:endColor="#88b823"
android:startColor="#b0dc54" />
</shape>
Run Code Online (Sandbox Code Playgroud)
那么是否可以将这两个 XML 资源结合起来呢?到目前为止我所尝试的只是显示可绘制对象而不是形状:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_send_white_48dp" android:state_focused="true"/>
<item android:drawable="@drawable/ic_send_white_48dp" android:state_pressed="true"/>
<item android:drawable="@drawable/ic_send_black_48dp">
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:radius="4dp" />
<gradient android:angle="270"
android:endColor="#88b823"
android:startColor="#b0dc54" />
</shape>
</item>
</selector>
Run Code Online (Sandbox Code Playgroud) 不幸的是XX已停止了.
我启动高效的应用程序,当我设置时,我会收到此消息
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
Run Code Online (Sandbox Code Playgroud)
我没有任何额外的proguard规则(因为没有图书馆说明有必要).
我的依赖项看起来像这样:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'com.google.android.gms:play-services-ads:8.4.0'
compile 'me.leolin:ShortcutBadger:1.1.4@aar'
compile 'com.facebook.android:facebook-android-sdk:4.+'
compile 'com.jraska:falcon:1.0.0'
}
Run Code Online (Sandbox Code Playgroud)
我尝试的是添加
-keep class com.loopj.** {*;}
-keep class com.jraska.** {*;}
-keep class me.leolin.** {*;}
-keep class com.android.** {*;}
-keep class com.google.** {*;}
-keep class com.facebook.** {*;}
Run Code Online (Sandbox Code Playgroud)
我的proguard规则,但仍然是同样的错误.任何的想法?
我有一个多维,我想获得第二维的第一个元素.
myArray[0]
Run Code Online (Sandbox Code Playgroud)
是我的第二个维度.我无法使用
myArray[0][0]
Run Code Online (Sandbox Code Playgroud)
因为我不知道第二维的关键(key = userID).知道如何在不知道密钥的情况下获取第一个元素吗?
我想测试javascript中的字符串是否包含带有整数的正常括号
var str="(12) this is a test";
var pat=/(([\d]+))/;
if (pat.test(str))
alert("true");
Run Code Online (Sandbox Code Playgroud)
工作正常,但当字符串看起来像这样时它也返回true
var str="12) test";
var str="(12 test";
Run Code Online (Sandbox Code Playgroud)
哪个应该返回false.
我想通过 Android 应用程序中的应用内购买来出售高级帐户。我可以使用不同的付款方式(例如 PayPal 和 Paymill)来代替 Google Play 应用内结算吗?
订阅付款似乎只允许使用 Google 提供的付款方式(https://developer.android.com/google/play/billing/billing_subscriptions.html# payment)。
我的CollapsingToolbarLayout无法正常工作。当我向下滚动一点时,图像1显示初始状态,图像2显示初始状态。过渡发生得太早了,它将最终出现在(在这种情况下)粉红色的空白空间。再次向上滚动时也会发生同样的情况。有什么办法解决吗?
我的布局:
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="@dimen/activity_main_cover_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/backdrop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@color/transparent_background_dark"
android:orientation="vertical"
android:paddingLeft="@dimen/box_headline_padding"
android:paddingStart="@dimen/box_headline_padding">
<!-- ... -->
</LinearLayout>
</RelativeLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
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"
android:paddingBottom="0dp"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<!-- ... -->
</android.support.v4.widget.NestedScrollView>
Run Code Online (Sandbox Code Playgroud)


android ×4
arrays ×1
facebook ×1
google-play ×1
javascript ×1
jquery ×1
node.js ×1
php ×1
regex ×1
sharp ×1