小编jbi*_*han的帖子

Android - 如何在API级别4上拦截android WebViewClient中的表单POST

我有这样的WebViewClient依恋WebView:

webView.setWebViewClient(new MyWebViewClient());
Run Code Online (Sandbox Code Playgroud)

这是我的实现MyWebViewClient:

private class MyWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
      webView.loadUrl(url);
      return true;
    }    
}
Run Code Online (Sandbox Code Playgroud)

我给了WebView一个URL来加载via loadUrl().如果我a href...在页面中有一个link(),我的shouldOverrideUrlLoading方法被调用,我可以拦截链接点击.

但是,如果我有一个方法的表单,则不调用POSTshouldOverrideUrlLoading方法.

我在这里注意到了一个类似的问题:http://code.google.com/p/android/issues/detail?id = 9122这似乎建议覆盖postUrl我的WebView.但是,此API仅从API级别5开始提供.

如果我在API级别4,我该怎么办?有没有其他方法来拦截表格帖子?

forms post android webviewclient

28
推荐指数
2
解决办法
3万
查看次数

使用动画更改布局的权重

在我的主布局文件中,我有一个RelativeLayout,权重为1(基本上显示一个地图)在LinearLayout上方,权重为2,这样声明:

<LinearLayout
    android:id="@+id/GlobalLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <RelativeLayout
        android:id="@+id/UpLayout"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="1" >
    </RelativeLayout>

    <LinearLayout
        android:id="@+id/DownLayout"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="2"
        android:orientation="vertical" >
    </LinearLayout>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

DownLayout包含一个项目列表,当我点击一个项目时,我想将DownLayout的权重更改为4,因此上部布局(地图)仅占屏幕的1/5而不是1/3.

我设法通过更改LayoutParams来实现:

    LinearLayout linearLayout = (LinearLayout) mActivity.findViewById(R.id.DownLayout);
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
            LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT);
    params.weight = 4.0f;
    linearLayout.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)

它有效,但我不满意,变化太直接,没有过渡,而我希望它是顺利的.有没有办法使用动画?

我发现了一些使用ObjectAnimator来改变weightSum的例子,但它并不想要我想要的(如果我只改变这个属性,我在我的向下布局下面有一些空闲空间):

        float ws = mLinearLayout.getWeightSum();
        ObjectAnimator anim = ObjectAnimator.ofFloat(mLinearLayout, "weightSum", ws, 5.0f);
        anim.setDuration(3000);
        anim.addUpdateListener(this);
        anim.start();
Run Code Online (Sandbox Code Playgroud)

有没有办法使用ObjectAnimator(或其他东西)来做到这一点?

谢谢 !

android android-animation android-layout

11
推荐指数
1
解决办法
7353
查看次数

Android studio:当我尝试将Class移动到另一个包时发出警告

这是一个错误消息.

Method Object.toString(), 
referenced in method SettingActivity.saveDataButtons(), 
will not be accessible in module personal-health-assistant back up 29 oct  

Method String.trim(), 
referenced in method SettingActivity.setNullCurrentFocusedEditText(), 
will not be accessible in module personal-health-assistant back up 29 oct  

Method String.length(), 
referenced in method SettingActivity.setNullCurrentFocusedEditText(), 
will not be accessible in module personal-health-assistant back up 29 oct
Run Code Online (Sandbox Code Playgroud)

我想知道

  1. 怎么会发生这种情况?为什么某些方法无法在模块中访问?
  2. 有关系吗?
  3. 如何解决这个警告?

java android android-studio

11
推荐指数
1
解决办法
2790
查看次数

如何从pymongo运行原始mongodb命令

mongo命令行中,我可以运行

db.my_collection.stats()
Run Code Online (Sandbox Code Playgroud)

我需要获取我的收藏统计数据,Python所以我试过了

from pymongo import MongoClient

client = MongoClient()
db = client.test_database

collection = db.test_collection

collection.stats()
Run Code Online (Sandbox Code Playgroud)

但我明白了

TypeError: 'Collection' object is not callable. 
If you meant to call the 'stats' method on a 'Collection' object it is failing because no such method exists.
Run Code Online (Sandbox Code Playgroud)

这是因为pymongo不支持这种方法.如何发送原材料mongoDB到命令mongo通过Python

python mongodb pymongo

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

设计迁移不起作用

我创建了一个用户模型Devise,每当我使用时,rake db:migrate我都会遇到以下问题:

==  DeviseCreateUsers: migrating ==============================================
-- create_table(:users)
rake aborted!
An error has occurred, this and all later migrations canceled:

undefined method `database_authenticatable' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x00000103fa1ff0>

Tasks: TOP => db:migrate
(See full trace by running task with --trace)
Run Code Online (Sandbox Code Playgroud)

我用完全跟踪,--trace function但似乎无法弄清楚问题是什么.这是迁移文件:

class DeviseCreateUsers < ActiveRecord::Migration
def self.up
create_table(:users) do |t|
  t.database_authenticatable :null => false
  t.recoverable
  t.rememberable
  t.trackable
  t.confirmable

  # t.encryptable
  # t.lockable :lock_strategy => :failed_attempts, :unlock_strategy => :both
  # t.token_authenticatable


  t.timestamps
 end

add_index :users, :email,                :unique …
Run Code Online (Sandbox Code Playgroud)

rake ruby-on-rails devise

8
推荐指数
2
解决办法
4613
查看次数

我无法初始化Google Play游戏服务

项目只有这个代码,我只是按照这个描述.访问https://developers.google.com/games/services/android/init

制作项目并添加库'google-play-services_lib'和'BaseGameUtiles'

将"扩展活动"更改为"BaseGameActivity"并添加一些代码.

我构建并运行...我的应用程序崩溃了 Java.lang.illegal

我怎样才能解决这个问题?

public class MainActivity extends BaseGameActivity implements View.OnClickListener{

    Button btnLogin;
    ImageView profilePic;
    TextView profileName;

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

            btnLogin = (Button)findViewById(R.id.btn_login);
            profilePic = (ImageView)findViewById(R.id.img_userprofile);
            profileName = (TextView)findViewById(R.id.txt_user_name);

            btnLogin.setOnClickListener(this);
    }


    @Override
    public void onSignInFailed() {
            profileName.setText("LOGIN FAILED");
    }

    @Override
    public void onSignInSucceeded() {
            profileName.setText("LOGIN SUCCESS");
    }

    @Override
    public void onClick(View v) {
            switch(v.getId())
            {
            case R.id.btn_login:
                    beginUserInitiatedSignIn();
                    break;
            }
    }

}
Run Code Online (Sandbox Code Playgroud)

错误日志:

09-15 11:06:09.420: I/dalvikvm(1753): Could not find method android.view.View.getDisplay, referenced …
Run Code Online (Sandbox Code Playgroud)

android

3
推荐指数
1
解决办法
5474
查看次数

高图表 - 带有时间范围的列范围图表.如何将工具提示作为开始和结束时间

我正在制作一个具有一定时间范围的列范围图表.基本上想要绘制不同进程所采取的不同时间,因为它们一个接一个地进行.这是小提琴的一个例子.

$(function () {

    $('#container').highcharts({

        chart: {
            type: 'columnrange',
            inverted: true
        },

        title: {
            text: 'Temperature variation by month'
        },

        subtitle: {
            text: 'Observed in Vik i Sogn, Norway, 2009'
        },

        xAxis: {
            categories: ['02/07/2013', '03/07/2013', '04/07/2013']
        },

        yAxis: {
            type: 'datetime',
            title: {
                text: 'Temperature ( °C )'
            }
        },

            tooltip: {
            valueSuffix: '°C'
        },

        plotOptions: {
            columnrange: {
                dataLabels: {
                    enabled: true,
                    formatter: function () {
                        return this.y + '°C';
                    }
                }
            }
        },

        legend: {
            enabled: false …
Run Code Online (Sandbox Code Playgroud)

highcharts

3
推荐指数
1
解决办法
5487
查看次数

emulator-arm.exe已停止工作

如果模拟器停止工作,我该怎么办?

它在问题详细信息中显示:

Problem signature:
    Problem Event Name: APPCRASH
    Application Name:   emulator-arm.exe
    Application Version:    0.0.0.0
    Application Timestamp:  5111a505
    Fault Module Name:  ig4icd32.dll
    Fault Module Version:   8.15.10.2057
    Fault Module Timestamp: 4b5e41aa
    Exception Code: c0000005
    Exception Offset:   00032930
    OS Version: 6.1.7600.2.0.0.256.1
    Locale ID:  1033
    Additional Information 1:   0a9e
    Additional Information 2:   0a9e372d3b4ad19135b953a78882e789
    Additional Information 3:   0a9e
    Additional Information 4:   0a9e372d3b4ad19135b953a78882e789
Run Code Online (Sandbox Code Playgroud)

谢谢!

android android-emulator

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

在Java代码中设置android TextView的文本外观

如何TextView在Java代码中将android的文本外观设置为大?有一种方法setTextAppearance(),但我不知道如何使用它.

android

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