小编Shr*_*jan的帖子

Android:如果发生任何声音,则监听器录制声音

在我的应用程序中,我想实现在发出任何声音时记录声音的方法.

像这个应用程序类似的东西:会说话的汤姆猫

那我该怎么办呢?是否有任何声音可以监听声音并在有声音的情况下录制它?

java audio android record android-mediarecorder

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

Android:如何做这个框架油漆?

我有一些静态图像如下:

在此输入图像描述

现在,我想要的是,当我触摸脸部或手部时,所选择的颜色应该填充在该皮肤部分上.

见下面的结果图:

在此输入图像描述

那么如何获得上面的结果?重做和撤消功能也应该存在.

我尝试使用FloodFill颜色,但这样做我只能对特定部分进行着色.因为FloodFill只填充颜色,直到相同的pixwl颜色出现.如果触摸位置像素颜色发生变化,它将不会填充颜色.

所以Usinf FloodFill我得到了如下图像的结果,如果我按下手,那么只有手部分将填充颜色,而不是它我想要填充另一只手和脸的颜色. 在此输入图像描述

所以请在这种情况下帮助我.

EDITED

一些答复后,我得到了像解决这一个.

但仍然存在内存问题.它消耗大量内存来绘制颜色.所以,任何人都可以帮助我吗?

android draw flood-fill android-canvas

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

Android:如何只为图像的特定部分填充颜色?

我有像这样的图像:

在此输入图像描述 现在,我想将颜色填充到该图像的特定部分.如果我选择蓝色,如果我触摸Cap,那么帽子应该填充蓝色.同样的事情也应该发生在鼻子,嘴巴,眼睛等其他部位

那么,如何才能使用android?

任何budy都可以帮助我.

更新

我已尝试在我的应用中实施FloodFill算法.看这里

但在这之后我得到了例外:

    03-09 17:45:16.260: ERROR/AndroidRuntime(2558): java.lang.IllegalStateException
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.graphics.Bitmap.setPixel(Bitmap.java:847)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at com.project.fingerpaint.FinderPaintDemo.FloodFill(FinderPaintDemo.java:284)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at com.project.fingerpaint.FinderPaintDemo.access$3(FinderPaintDemo.java:272)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at com.project.fingerpaint.FinderPaintDemo$MyView.onTouchEvent(FinderPaintDemo.java:187)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.View.dispatchTouchEvent(View.java:3766)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1671)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558):     at android.app.Activity.dispatchTouchEvent(Activity.java:2086)
03-09 17:45:16.260: ERROR/AndroidRuntime(2558): …
Run Code Online (Sandbox Code Playgroud)

android paint draw android-canvas

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

"您的设备与此版本不兼容"

我在Play商店中放置了一个应用程序,我的朋友在两个设备上运行4.0.3,在尝试安装我的应用程序时收到以下消息:"您的设备与此版本不兼容".

一个设备允许它安装而另一个设备不允许.我允许API 3-15,两个设备都是4.0.3.有什么问题?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.snotyak.basicfuelcalcpro"
    android:versionCode="2"
    android:versionName="1.2.3" >
    <uses-sdk
        android:minSdkVersion="4" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <application
        android:name=".CalcApp"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/MainTheme" >
        <activity android:name=".CalcActivity" >
        </activity>
        <activity
            android:name=".PrefsActivity"
            android:label="@string/prefs_name" />
        <activity
            android:name=".CalcTabView"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".AboutActivity"></activity>
        <activity android:name=".HistoryActivity" />
        <activity android:name=".AnalysisActivity" />
    </application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

android google-play

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

如何从GLSurfaceView保存位图(只有位图,而不是整个纹理)

我正在使用此代码对GlSurfaceView上的位图赋予多重效果. 应用效果,图像上,使用效果

现在,我想保存位图.他们给出了保存位图的代码,但是,整个GlSurfaceView将被保存为位图图像.相反,我想只保存位图区域以保存为图像.

有一种方法可以获取像素并从中制作位图并制作图像.例如:

  public Bitmap takeScreenshot(GL10 mGL) {
  final int mWidth = mEffectView.getWidth();
  final int mHeight = mEffectView.getHeight();
  IntBuffer ib = IntBuffer.allocate(mWidth * mHeight);
  IntBuffer ibt = IntBuffer.allocate(mWidth * mHeight);


  mGL.glReadPixels(0, 0, mWidth, mHeight, GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, ib);

   // Convert upside down mirror-reversed image to right-side up normal
  // image.
  for (int i = 0; i < mHeight; i++) {
   for (int j = 0; j < mWidth; j++) {
    ibt.put((mHeight - i - 1) * mWidth + j, ib.get(i …
Run Code Online (Sandbox Code Playgroud)

android textures opengl-es bitmap glsurfaceview

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

如何在android中保存绘图画布?

我正在使用开发者网站的这个API演示,这个演示.

但我很奇怪如何将该图像保存到我的Andrtoid设备.请任何人给代码将该绘制的图像保存到Android设备.

谢谢.

android android-widget android-emulator android-layout android-canvas

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

为何键盘出现在TabBar之后?

在我的应用程序中有tabBar和Edittext.

见下图:

正常屏幕:

在此输入图像描述

和图像按下edittext后:

在此输入图像描述

现在为什么这个tabbar与键盘一起上升.即使用户按下edittext打开键盘,我希望它仍然保持在底部.

那我该怎么办呢?

请帮帮忙吗?

我的TabBarMain活动的xml布局如下所示:

    <?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    >

    <LinearLayout
        android:id="@+id/LL1"
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >

       <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            />

      <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:layout_gravity="bottom"
            android:layout_weight="0"/>

    </LinearLayout>

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

所以请帮助我.

谢谢.

android tabbar tabwidget android-intent android-layout

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

一段时间后,Eclipse会因为java的错误而挂起

我正在使用Eclipse Juno进行android开发.

我正在研究包含4-5库的项目.知道是什么原因,但经过多次使用同一个项目后,My Eclipse就会挂起.另一件事是它只是在我尝试从eclipse运行应用程序时挂起.

之后我的Eclipse停止工作并处于Not Responding状态.当我点击它时,我通过关闭Eclipse获得了以下信息.信息: 在此输入图像描述

我不知道造成这种情况的原因是什么.请帮我解决这个问题.

java eclipse android eclipse-juno

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

获取其中包含歌曲的类型名称列表

我正在使用CursorLoder类从android的媒体内容提供者获取Genre列表.下面是我的光标查询来获取类型列表.

 public Loader<Cursor> onCreateLoader(int id, Bundle args) {
        // currently filtering.
        Uri baseUri;
        baseUri = MediaStore.Audio.Genres.EXTERNAL_CONTENT_URI;
        String[] STAR = { "*" };
        return new CursorLoader(getActivity(), baseUri, STAR, null, null, null );
    }
Run Code Online (Sandbox Code Playgroud)

现在,我从媒体内容提供商处获得了所有类型列表,但是我得到的数据存在问题.我也得到了之前创建的流派名称,但现在我没有歌曲.

我只想要有歌曲的流派,而不是没有歌曲的流派名称.

任何人都可以帮助我吗?

UPDATE

我可以使用下面的代码获取所有类型及其歌曲...

private void getGenresList() {

        //-------------------------------------

        int index;
        long genreId;
        int count;
        Uri uri;
        Cursor genrecursor;
        Cursor tempcursor;
        String[] proj1 = {MediaStore.Audio.Genres.NAME, MediaStore.Audio.Genres._ID};   
        String[] proj2={MediaStore.Audio.Media.DISPLAY_NAME};

         genrecursor=getActivity().getContentResolver().query(MediaStore.Audio.Genres.EXTERNAL_CONTENT_URI,proj1,null, null, null);
         if(genrecursor.moveToFirst())
         {
             do{
                index = genrecursor.getColumnIndexOrThrow(MediaStore.Audio.Genres.NAME);            
                System.out.println("GENRE NAME: "+genrecursor.getString(index));
                System.out.println("======================================");

                index = genrecursor.getColumnIndexOrThrow(MediaStore.Audio.Genres._ID);             
                genreId=Long.parseLong(genrecursor.getString(index));
                uri = …
Run Code Online (Sandbox Code Playgroud)

android android-contentprovider simplecursoradapter android-cursorloader

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

如何使用Azure自定义视觉服务响应boundingBox来绘制形状

我正在使用Azure认知服务自定义视觉服务来检测捕获图像中的形状.根据他们的文档,我按照他们的格式得到了回复.

但是我在绘制图像上方的形状时遇到了问题.

{
    "id": "0fbda4ee-8956-4979-bf57-a252441af98d",
    "project": "9ca4032b-beeb-40ad-9396-1c3fcfd9ba89",
    "iteration": "27c85265-a158-4fc4-b22a-d535dd758d80",
    "created": "2018-06-11T09:34:29.9496528Z",
    "predictions": [
        {
            "probability": 0.0102891214,
            "tagId": "677afcf8-bc4a-493f-b588-707663286125",
            "tagName": "ball",
            "boundingBox": {
                "left": 0.2889924,
                "top": 0.0169312358,
                "width": 0.7007024,
                "height": 0.8284572
            }
        },
        {
            "probability": 0.012788726,
            "tagId": "ca844f08-b6c0-4d9a-9010-73945d442708",
            "tagName": "cricket ball",
            "boundingBox": {
                "left": 0.304018974,
                "top": 0.413163722,
                "width": 0.299461246,
                "height": 0.436399817
            }
        },
        {
            "probability": 0.0229086485,
            "tagId": "ca844f08-b6c0-4d9a-9010-73945d442708",
            "tagName": "cricket ball",
            "boundingBox": {
                "left": 0.2889924,
                "top": 0.0169312358,
                "width": 0.7007024,
                "height": 0.8284572
            }
        },
        {
            "probability": 0.0100123268,
            "tagId": "4672144d-5593-446f-be63-5144a35d0e6e",
            "tagName": …
Run Code Online (Sandbox Code Playgroud)

computer-vision microsoft-cognitive azure-cognitive-services

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