小编Hit*_*sit的帖子

将SurfaceView与其他视图(如TextView和Buttons)相结合

我对android编程完全不熟悉(只做了一些教程/阅读开发指南等),并且每个新手我都想做一个无用的游戏:-).

目前我正在努力与不同观点的布局.与示例类似,我创建了一个扩展a SurfaceView并将其放入a的类FrameLayout.围绕这个SurfaceView我希望有其他视图像Buttons&TextViews.像这样的东西:

-----------------------------------------------
| TextView | SurfaceView           | TextView |
|          |                       |          |
------------                       ------------
|          |                       | TextView |
|          |                       |          |
|          |                       ------------
|          |                       | TextView |
|          |                       |          |
|          |                       ------------
|          |                       |          |
|          |                       |          |
-----------------------------------------------
| Button                             Button   |
-----------------------------------------------
Run Code Online (Sandbox Code Playgroud)

我已经设法用a FrameLayoutRelativeLayouts(粘TextViews在屏幕的边缘)做这样的事情,但我想更好地控制它的大小,SurfaceView因为它应该是对象的宽度和高度的倍数我会画画.我已经尝试过设置layout_widthlayout_height一些dp值,但是当我开始绘制0,0时它仍然位于左上角(那里TextView是......).

那么,实现上述布局的最佳实践是什么?使用什么布局?或者我应该更好地在我的 …

layout android opengl-es surfaceview android-layout

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

ListView中显示的Youtube播放列表

我有一个GDATA链接,我想在我的应用程序中使用.此链接包含播放列表,我希望该播放列表显示在ListView.然后,用户将选择他/她想要的视频,然后可以使用本地Youtube应用程序在应用程序旁边播放.

请指出一个直观的教程.我知道YouTube API页面包含所有信息,但我可以做出正面或反面.

android listview gdata-api youtube-api playlist

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

发布到HTTPS URL时,Android WebView.postUrl()显示空白屏幕

在我的Android应用程序中,我将数据发送到httpsservlet URL WebView,如下所示

String postData = "fileContents=" + fileCon;
WebView.postUrl(url, EncodingUtils.getBytes(postData, "BASE64"));
Run Code Online (Sandbox Code Playgroud)

上面代码中的URL是一个servlet URL,我必须发布一些数据,然后从那里重定向到其他URL.

当servlet URL正好时,上面的代码工作正常HTTP.但是当更改为时HTTPS,它显示为空白屏幕.

我为android HTTPS问题尝试了以下解决方案:http: //blog.antoine.li/index.php/2010/10/android-trusting-ssl-certificates/

我从onCreate()方法中删除了上面的代码并尝试了以下代码

ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
postParameters.add(new BasicNameValuePair("fileContents", fileCon));
DefaultHttpClient client = new MyHttpClient(getApplicationContext());
try {   
    HttpPost request = new HttpPost(url);
    UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParameters);
    request.setEntity(formEntity);
    HttpResponse resp = client.execute(request);
} catch(Exception e){
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

现在我可以发布数据,并从那里也重定向.但我仍然看到一个空白的屏幕.

是因为我没有loadUrlpostUrl我看到空白屏幕?

或者我应该将上述代码放在任何方法中WebView

https android httpclient android-webview

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

在ViewPager中动态添加和删除片段

我使用的是ViewPager一个PagerFragmentAdapter使用内部列表来提供片段的自定义.我想在设置更改时动态添加和删除片段.

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_pager);
    mAdapter = new ServicePagerAdapter(getSupportFragmentManager());
    mPager = (ViewPager) findViewById(R.id.pager);
    mPager.setAdapter(mAdapter);
}
Run Code Online (Sandbox Code Playgroud)

我试图再次打电话setAdapter但是我得到了一个IllegalStateException (Can not perform this action after onSaveInstanceState).

怎么能达到我的目的?

android adapter android-fragments android-viewpager

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

如何让HtmlUnit在Android下运行?

这是我的代码:

import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;

final WebClient webClient = new WebClient();
final HtmlPage startPage = webClient.getPage("http://htmlunit.sf.net");
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

11-04 21:58:08.761: ERROR/dalvikvm(17868): Could not find class 'com.gargoylesoftware.htmlunit.DefaultCssErrorHandler', referenced from method com.gargoylesoftware.htmlunit.WebClient.<init>
11-04 21:58:08.771: ERROR/dalvikvm(17868): Could not find class 'com.gargoylesoftware.htmlunit.DefaultCssErrorHandler', referenced from method com.gargoylesoftware.htmlunit.WebClient.<init>
11-04 21:58:09.501: ERROR/AndroidRuntime(17868): FATAL EXCEPTION: AsyncTask #1
11-04 21:58:09.501: ERROR/AndroidRuntime(17868): java.lang.RuntimeException: An error occured while executing doInBackground()
11-04 21:58:09.501: ERROR/AndroidRuntime(17868):     at android.os.AsyncTask$3.done(AsyncTask.java:200)
11-04 21:58:09.501: ERROR/AndroidRuntime(17868):     at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:274)
11-04 21:58:09.501: ERROR/AndroidRuntime(17868):     at java.util.concurrent.FutureTask.setException(FutureTask.java:125)
11-04 21:58:09.501: ERROR/AndroidRuntime(17868):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:308)
11-04 21:58:09.501: …
Run Code Online (Sandbox Code Playgroud)

java android htmlunit

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

水平滚动页面中的水平滚动视图

我有一个基于Android-ViewPagerIndicator的应用程序.

我想创建HorizontalScrollView一个Fragment.视图将包含一些图片.我的问题是,当我尝试滚动时,我的滚动视图不起作用,我滚动所有片段而不仅仅是我想要的视图.希望我的问题是可以理解的!:)

这是代码的一部分:

.XML

   <HorizontalScrollView android:id="@+id/horizontalScroll"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollbars="none" 
    android:fadingEdgeLength="10dp">
<LinearLayout 
        android:id="@+id/harokLayout"
        android:background="#EEEEEE"
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app2" android:layout_height="wrap_content" android:layout_width="wrap_content" />
        <ImageView android:src="@drawable/app1" android:layout_height="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-ui android-layout android-fragments android-viewpager

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

Android:计算MyAdapter :: getView中的视图大小

我有一个ListView内部,我动态填充方法中的列表项getView(),与TextView,和一起组合ImageView.

我需要计算getView中Text和Image视图的大小,所以visibility=gone如果View太大,我将能够设置.我是:

public View getView(int position, View convertView, ViewGroup parent) {
  ..
  View listItem=view.findViewById(R.id.listItem);
  ImageView imageView=(ImageView)view.findViewById(R.id.myImg);
  TextView textView=(TextView)view.findViewById(R.id.mytxt);
  if (imageView.getRight()>listItemText.getRight()) {
    imageView.setVisibility(View.GONE);   
  }
  if (textView.getRight()>listItemText.getRight()) {
    textView.setVisibility(View.GONE);    
  }
  ..
}
Run Code Online (Sandbox Code Playgroud)

但是因为我在里面getView(),所以还没有创建布局的值,所以我得到了View.getRight()调用的错误值.

任何想法如何做到这一点?

layout android listview android-ui

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

为不同的活动保留不同的搜索历史记录?

我有两个活动,我希望他们各自保持自己的搜索历史建议.那可能吗?他们每个人都有自己的搜索建议提供者,但我看到两个活动都出现了相同的搜索历史记录:

// manifest.xml
<activity
  android:name="ActivityA"
  ...
  <meta-data 
    android:name="android.app.searchable"
    android:resource="@xml/searchable_A" />
</activity>

<activity
  android:name="ActivityB"
  ...
  <meta-data 
    android:name="android.app.searchable"
    android:resource="@xml/searchable_B" />
</activity>


// searchable_A.xml
<searchable   
  android:searchSuggestAuthority="providerA" />

// searchable_B.xml
<searchable   
  android:searchSuggestAuthority="providerB" />
Run Code Online (Sandbox Code Playgroud)

保存搜索建议时,我确保为每个活动使用正确的提供程序.

// ActivityA.java
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(ActivityA.this,
    providerA.AUTHORITY, providerA.MODE);
suggestions.saveRecentQuery(...);

// ActivityB.java
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(ActivityB.this,
    providerB.AUTHORITY, providerB.MODE);
suggestions.saveRecentQuery(...);
Run Code Online (Sandbox Code Playgroud)

由于搜索建议提供者不同,我期望他们每个人都保持不同的历史.这里的用例是我Activity专门用于汽车,Activity专用于食品.我不希望将过去的搜索词混合在一起,它们在不同的上下文中没有意义.

http://developer.android.com/guide/topics/search/adding-recent-query-suggestions.html

android android-searchmanager

5
推荐指数
0
解决办法
660
查看次数

移动videoView ...使用翻译动画

我基本上试图VideoView通过在包含的布局上使用动画制作来移动我.但是,视频视图永远不会移动.它的布局移动了,但不是视频本身?

如何移动视频?

这是我到目前为止所拥有的.

slideleft.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0%" android:toXDelta="-50%" android:duration="200"
    android:fillAfter ="true" android:fillEnabled="true"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
</set>
Run Code Online (Sandbox Code Playgroud)

activiy中动画部分(每次重新初始化的动画师只是为了确保)

public void videoSlideOut(long time){
    rn2 = new Runnable(){
        public void run() {
            Animation SlideLeft = AnimationUtils.loadAnimation(Video.this, R.anim.slideleft);
            Animation SlideLeft2 = AnimationUtils.loadAnimation(Video.this, R.anim.slideleft);
            ((RelativeLayout) findViewById(R.id.video_view_slider)).startAnimation(SlideLeft);
            video.startAnimation(SlideLeft2);
        }
    };
    hnd.postDelayed(rn2, time);

}
Run Code Online (Sandbox Code Playgroud)

animation android sliding android-videoview

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

第一次布局后无法获取viewWidth(ViewPager中的WebView)

稍后我将更新一个完整的教程,介绍如何实现WebView内部a ViewPager,但是我得到一个非常奇怪的问题,我不明白如何修复.

以下是我正在运行的实现......

XML:

     <android.support.v4.view.ViewPager
     android:id="@+id/viewpager"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:layout_above="@+id/lastLoginText"
     android:layout_alignParentLeft="true"
     android:layout_alignParentRight="true"
     android:layout_alignParentTop="true"
     android:layout_below="@+id/PreferencesButton" >

     </android.support.v4.view.ViewPager>
Run Code Online (Sandbox Code Playgroud)

ViewPager实例化对象:

((ViewPager) collection).removeAllViews();
WebView a = webview[position];
((ViewPager) collection).addView(a);
Run Code Online (Sandbox Code Playgroud)

Webview是在单独的(InitWebViews)中设置的

    webview[0] = new WebView(this.getApplicationContext());
    webview[0].loadUrl("file:///android_asset/test.html");
    webview[1] = new WebView(this.getApplicationContext());
    webview[1].loadUrl("file:///android_asset/test.html");
    webview[2] = new WebView(this.getApplicationContext());
    webview[2].loadUrl("file:///android_asset/test.html");
Run Code Online (Sandbox Code Playgroud)

任何想法为什么会这样,或者我如何强迫它viewWidth成为1280?或者我启动WebViews 的方式还有其他问题吗?

android view android-layout android-webview android-viewpager

5
推荐指数
0
解决办法
1828
查看次数