小编edw*_*win的帖子

在操作栏顶部显示视图

有没有办法在操作栏上呈现视图?我想创建一个小的提示框,将用户指向操作栏中的项目.我知道Toast具有设定视图的a将呈现在操作栏上方.有谁知道如何用视图做到这一点?

我已经尝试使用FrameLayoutlayout_gravity="top"和膨胀视图,然后将其添加到运行活动的布局.

我提前感谢你.

编辑:这是我在想的图像: 在此输入图像描述

编辑:也许需要更多细节.我正在寻找一种方法,或者找出是否甚至可以将视图添加到活动的视图层次结构中,以便最后呈现它.

与CSS类似,我希望此特定视图(图像中的蓝色浮动框)具有更高的z-index顺序,以便它将在活动中的Action Bar区域上呈现.视图与Action Bar无关,它只是简单地绘制在它上面.

android view z-index android-actionbar

37
推荐指数
5
解决办法
3万
查看次数

Android:使用文本内部绘制圆圈

我需要在我的片段中绘制三个圆圈,圆圈的大小不同,我引用此链接 我获得的结果是这个

在此输入图像描述

这是我的XML代码:UPDATED

<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center" >
         <TextView
             android:id="@+id/large_volume"
             android:layout_width="185dp"
             android:layout_height="185dp"
             android:background="@drawable/circle"
             android:gravity="center"
             android:text="My name is NON"
             android:textColor="#FFFFFF"
             android:textSize="10dp" />

         <TextView
             android:id="@+id/medium_volume"
             android:layout_width="120dp"
             android:layout_height="120dp"
             android:layout_alignTop="@+id/large_volume"
             android:layout_toRightOf="@+id/large_volume"
             android:background="@drawable/circle"
             android:gravity="center"
             android:text="My name is NON"
             android:textColor="#FFFFFF"
             android:textSize="10dp" />

         <TextView
             android:id="@+id/TextView02"
             android:layout_width="90dp"
             android:layout_height="90dp"
             android:layout_below="@+id/medium_volume"
             android:layout_toRightOf="@+id/large_volume"
             android:background="@drawable/circle"
             android:gravity="center"
             android:layout_marginTop="-3dp"
             android:layout_marginLeft="-17dp"
             android:text="My name is NON"
             android:textColor="#FFFFFF"
             android:textSize="10dp" />

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

但我需要的是这样的 在此输入图像描述

你可以看到圈子必须紧密相连,但是当我使用XML视图时,我无法实现这一点.我怎样才能实现这一点,我需要onClickListeners在我的圈子中这就是为什么我使用视图

这可以通过Canvas绘图实现,我听说画布不是视图所以这会限制我给点击听众,如果我错了纠正我

更新:

我通过XML方法满足了我的需求,有没有办法通过画布绘图实现这一点,我应该发布另一个问题吗?

android android-layout android-canvas android-view

27
推荐指数
3
解决办法
5万
查看次数

减少AlertDialog.Builder组件的字体大小

AlertDialogue使用以下代码创建了一个:

 int selectedModeId=0;
 public void sortTypeModeSelection(){

    AlertDialog.Builder alertBuilder=new AlertDialog.Builder(WatchListDetailActivity.this);

    alertBuilder.setSingleChoiceItems(R.array.watchlist_sorting_modes,selectedModeId, new DialogInterface.OnClickListener(){
        public void onClick(DialogInterface dialog, int which) {
            switch (which){
                case 0:
                    selectedModeId=0;
                    break;
                case 1:
                    selectedModeId=1;
                    break;
                case 2:
                    selectedModeId=2;
                    break;
                case 3:
                    selectedModeId=3;
                    break;
                case 4:
                    selectedModeId=4;
                    break;
                case 5:
                    selectedModeId=5;
                    break;
                case 6:
                    selectedModeId=6;
                    break;
                case 7:
                    selectedModeId=7;
                    break;
            }
            dialog.cancel();
        }
    });
    alertBuilder.show();
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我发出警报,但我想减少对话框列表项的字体大小.我怎样才能做到这一点?

注意:不建议为自定义布局充气以实现此目的,我想知道是否有其他方法.

android android-custom-view android-fonts android-alertdialog

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

Android嵌套碎片方法

我是使用android片段的新手.我有一个场景让我解释一下我得到的

  1. 扩展FragmentActivity的 主要活动.我的主要活动包括两个片段
  2. 选项列表扩展了Fragment
  3. 详细信息扩展Fragment的列表
  4. 扩展Fragment的详细说明

当我启动我的主要活动时.它将包含碎片1中的选项列表 和碎片2中的详细信息列表.然后我从详细信息列表中选择一个项目.然后必须将其描述加载到主要活动的片段2

看到这个图像

在此输入图像描述

我不知道如何实现这一目标.我的意思是我怎么能告诉Details List片段在主要活动中加载详细描述片段.此外,当我按下后退按钮时,我必须返回到初始阶段,即

在此输入图像描述

编辑:

我所做的是在片段内创建接口(Listener)并在我的父活动上实现它.但如果有10个不同的片段,我需要在父活动中实现所有接口.那么有没有其他方法来实现这一目标?

android android-fragments android-fragmentactivity

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

在Android网页视图中通过iframe加载Youtube视频

我想使用iframe将youtube视频加载到Android webview

这是我的布局Xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/white"
android:id="@+id/mainLayout">

<WebView
    android:background="@android:color/white"
    android:id="@+id/webView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

我的代码是:

public class WebTube extends Activity {

private WebView wv;

String html = "<iframe class=\"youtube-player\" style=\"border: 0; width: 100%; height: 95%; padding:0px; margin:0px\" id=\"ytplayer\" type=\"text/html\" src=\"http://www.youtube.com/embed/WBYnk3zR0os"
            + "?fs=0\" frameborder=\"0\">\n"
            + "</iframe>";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    wv = (WebView)findViewById(R.id.webView); 
    wv.getSettings().setJavaScriptEnabled(true);
        wv.loadDataWithBaseURL("", html , "text/html",  "UTF-8", "");

     }
} 
Run Code Online (Sandbox Code Playgroud)

我也提供 <uses-permission android:name="android.permission.INTERNET"/>

& android:hardwareAccelerated="true"

当我运行这个时,我没有得到任何结果它只是显示黑屏

我试过这个.但是这给我提供了视频.3gp Quality.但是我需要来自youtube的原始质量的视频.这就是我使用的原因 …

youtube iframe android android-webview

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

Android通用应用程序方法

我想开发一个通用的应用程序.我是这种方法的新手.这意味着平板电脑和手机应用程序的单个apk.我经历过

支持库

片段

我的目标是在单个APk中为平板电脑和手机构建不同的UI.

我读过让你的应用程序准备好Jelly Bean和Nexus 7.这篇文章提到了

res/layout/activity_home.xml

To take advantage of the extra space on the 7” screen you might provide an alternative layout:

res/layout-sw600dp/activity_home.xml

The sw600dp qualifier declares that these resources are for devices that have a screen with at least 600dp available on its smallest side. 

    Furthermore you might even provide a different layout for 10” tablets:

res/layout-sw720dp/activity_home.xml
Run Code Online (Sandbox Code Playgroud)

这意味着我们可以为不同的设备使用不同的布局.这让我很困惑

编辑1 ::场景

假设

if my phone UI layout contains one-view pager and 

tablet UI layout contain …
Run Code Online (Sandbox Code Playgroud)

android apk android-ui android-layout

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

Android:具有崩溃转储报告的应用程序

我想为我的应用程序开发一个日志框架工作.我想要实现的目标是

  1. 跟踪我的应用程序的日志
  2. 在跟踪日志时将日志写入文本文件
  3. 过滤我的应用程序生成的日志
  4. 如果在将异常写入文本文件后发生任何错误/异常,请停止日志跟踪

首先我想知道这可能吗?我想通过使用服务我们实现了这一点.如果我错了请纠正我

我推荐这个项目来实现我的需求https://github.com/androidnerds/logger

在这个项目中,他们使用AIDL来创建一个记录日志的服务.但只有在意图出现时才会保存文件.

说真的,我是这个AIDL流程的新手.令我困惑的一点是示例项目没有给清单中的任何权限写入文件到存储.但它能够做到这一点.他们是如何实现的?

即使我经历过这些问题

  1. 如何从Android设备获取日志文件?
  2. 以编程方式获取log cat数据
  3. 将android logcat数据写入文件
  4. 在android中保存LogCat的数据
  5. 如何将LogCat内容保存到文件?
  6. 如何将整个Logcat写入sdcard?
  7. 过滤LogCat只能获取Android应用程序中的消息?

但没有什么对我有用.所以请建议一种方法来实现这一目标

logging android filtering android-service android-logcat

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

具有透明布局的Android活动

我希望创建一个看起来像弹出窗口的活动

这是活动的透明背景,我希望在设备屏幕右上角的scree上的自定义位置显示它

我所做的就是onCreate像popty一样流行

Display display = getWindow().getWindowManager().getDefaultDisplay();
    WindowManager.LayoutParams params = getWindow().getAttributes();
    // params.x = -20;
    params.height = (display.getHeight()) / 2;
    params.width = (display.getWidth()) / 2;
    // params.y = -10;
    params.gravity =  Gravity.RIGHT;
    getWindow().setAttributes(params); 
Run Code Online (Sandbox Code Playgroud)

在maifest

 <activity android:name=".DialogAct"
           android:theme="@android:style/Theme.Holo.Light.NoActionBar"></activity>
Run Code Online (Sandbox Code Playgroud)

这就是我的启动器活动的样子

在此输入图像描述

所以,当我点击动作栏上的搜索时,我正在向我的新活动发送意图.我想让它看起来像搜索图标下面的弹出这我得到的是 在此输入图像描述

您可以看到单击上一个活动的搜索并加载新活动(蓝色部分).如您所见,新活动将移至屏幕中心.但我希望它只是在操作栏图标下方.

我试过了params.gravity = Gravity.TOP | Gravity.RIGHT;.然后我得到了这个

在此输入图像描述

我想把它放在上一个活动的操作栏下面.我尝试了许多方法来实现它但失败了.所以任何人都可以建议一种方法

android android-view android-dialog android-activity

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

Phonegap,jQueryMobile和Web服务

我使用Android SDK和java包创建了一个原生的Android应用程序,使用我创建的ASP.Net Web服务,它工作正常.但现在我想制作这个跨平台的.我听说Phonegap和jQuery Mobile会对此有所帮助,但我仍然有点困惑.

  1. 是否有必要托管使用Javascript正常工作的HTML文件?要么
  2. 我可以在我的应用程序中包含HTML和js文件并调用Web服务方法吗?

有人可以指导我吗?

我的演示代码是

JAVA SCRIPT

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
 <script src="jquery-1.7.2.min"></script>
 <script src="jquery.mobile-1.1.1.min.js"></script>
<script type="text/javascript" charset="utf-8"/></script>

<link rel="stylesheet" src="jquery.mobile-1.1.1.min.css"/>
  <script type="text/javascript">


function onDeviceReady() {}
document.addEventListener("deviceready", onDeviceReady, false);

function LoginButton_onclick() {
    $.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
    url:    "http://182.72.192.18/webservicedemo/service.asmx/HelloWorld",
    data: '{}',
    success: function(msg) {
   jsonArray = $.parseJSON(msg.d);
    var $ul = $( '<ul id="details">' );
    for(i=0; i < jsonArray.length; i++)
    {
  $("#details").append('<li id="'+i+'" name="head" >'+jsonArray[i].name+'</li>' );
} $('#details').listview('refresh');
    },
    error: function(msg) {
         alert("Error");
    }
}); …
Run Code Online (Sandbox Code Playgroud)

javascript android jquery-mobile cordova

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

安卓视频在另一个线程和问题与Android 2.1

我想在Android视频视图中流式视频表单网址.我使用示例api代码并在其中进行了一些修改以实现我的需要.我的代码是

public class VideoViewDemo extends Activity {

private static final String TAG = "VideoViewDemo";
private String current;

/**
 * TODO: Set the path variable to a streaming video URL or a local media
 * file path.
 */
private String path = "http://www.boisestatefootball.com/sites/default/files/videos/original/01%20-%20coach%20pete%20bio_4.mp4";
private VideoView mVideoView;

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    setContentView(R.layout.videoview);
    mVideoView = (VideoView) findViewById(R.id.surface_view);
    runOnUiThread(new Runnable() {
        public void run() {
            playVideo();
        }
    });
}

private void playVideo() {
    try {
        // final String path = path; …
Run Code Online (Sandbox Code Playgroud)

java multithreading android video-streaming android-videoview

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