小编Bug*_*ggy的帖子

将图像转换为像素数组,使用像素重新创建图像 - 尺寸减小.为什么?

我将图像转换为像素数组.我将RGB值保存在三个单独的数组中.

然后,我尝试使用相同的值创建图像(无操作).原始图像为205kB,在B&W图像的情况下新图像为121kB,在彩色图像的情况下为215kB至96kB.此外,亮度稍有变化(亮度增加,整体对比度也增加).是什么造成的?

我尝试了有色和黑白图像.结果是一样的.

另外,我在前一个输出图像(96kB)上运行相同的代码,新输出仍然是96kB.

Codes-


1)阅读图像:

int width = img.getWidth(null);
int height = img.getHeight(null);

pixelR = new int[width * height];
pixelG = new int[width * height];
pixelB = new int[width * height];

int index=0;

int r, g, b, gray, rgb;

for(int i=0; i<width; i++) {
  for (int j=0; j<height; j++) {
    rgb = img.getRGB(i, j);

    r = (rgb >> 16) & 0xFF;
    g = (rgb >> 8) & 0xFF;
    b = (rgb & 0xFF);

    pixelR[index]=r;
    pixelG[index]=g;
    pixelB[index]=b;
    index++;
  }
} …
Run Code Online (Sandbox Code Playgroud)

java image

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

原语和包装器数据类型的使用有什么不同以及包装器数据类型的需求是什么?

我在网上搜遍了所有的答案,但所有答案都只是差异所在.我知道不同之处,但我不明白他们的应用程序的差异.

例如,假设我们必须采用两个浮点值,如果我们使用double,我们可以很容易地比较使用a==b,而如果我们使用Double,我们将不得不使用a.equals(b).

java primitive wrapper

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

用于标签的Android onclicklistener

我现在一直试图解决这个问题的时间比我承认的要长.我正在设置一个onClicklistenerfor my tabs,所以即使用户在该选项卡上并且他们点击它,该选项卡也会重新加载.有人可以指出我的错误,下面是我正在使用的代码从堆栈溢出的例子组成,所以感谢到目前为止!我正在使用getTabHost().setCurrentTab(3)它将其设置为仅在选项卡3上运行,但我如何获取它以便它调用用户单击的特定选项卡?

我一直在使用它作为参考:Tabs上的OnClickListener无法正常工作

public class DamTabs extends TabActivity implements OnClickListener{
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Resources res = getResources(); // Resource object to get Drawables
    TabHost tabHost = getTabHost(); // The activity TabHost


    Intent intent = new Intent(this, Featured.class);
    tabHost.addTab(tabHost.newTabSpec("Tab 1")
            .setIndicator("Featured", res.getDrawable(R.drawable.ic_tab_main))
            .setContent(intent));

    Intent intent2 = new Intent(this, Deals.class);
    tabHost.addTab(tabHost.newTabSpec("Tab 2")
            .setIndicator("Deals", res.getDrawable(R.drawable.ic_tab_setup))
            .setContent(intent2));

    Intent intent3 = new Intent(this, Events.class);
    tabHost.addTab(tabHost.newTabSpec("Tab 3")
            .setIndicator("Events", res.getDrawable(R.drawable.ic_tab_setup))
            .setContent(intent3));

    getTabWidget().getChildAt(3).setOnClickListener(new OnClickListener() {
        @Override
        public void …
Run Code Online (Sandbox Code Playgroud)

tabs android onclicklistener

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

无法解析符号“执行”...调用 AsyncTask

我正在尝试对GETURL 发出请求,我创建了一个扩展类AsyncTask<Void, Void, Void>并尝试调用new MyClass.execute()......我以前做过这个并且它有效,今天它不起作用。我究竟做错了什么?

这是我的代码:

public class SignUpActivity extends AppCompatActivity {

String TAG = SignUpActivity.class.getSimpleName();
String URL;

ArrayList<String> countries = new ArrayList<>();

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

    new MyClass.execute();
}

private class MyClass extends AsyncTask<Void, Void, Void> {

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        //TODO
    }

    @Override
    protected Void doInBackground(Void... params) {
        HttpHandler sh = new HttpHandler();

        // Making a request to url and getting response
        String jsonStr = sh.makeServiceCall(URL, …
Run Code Online (Sandbox Code Playgroud)

java android android-asynctask

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

builder.setAutoCancel(true)无法正常工作

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

    button = (Button) findViewById(R.id.button);
    final Intent intent = new Intent(MainActivity.this, AlertActivity.class);
    final PendingIntent pendingIntent = PendingIntent.getActivity(MainActivity.this, 0, intent, 0);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            NotificationCompat.Builder builder = new NotificationCompat.Builder(MainActivity.this);
            builder.setContentText("Click here");
            builder.setSmallIcon(R.mipmap.ic_launcher);
            builder.setContentTitle(getString(R.string.app_name));
            builder.addAction(R.mipmap.ic_launcher, "Test", pendingIntent);
            builder.setAutoCancel(true);
            NotificationManagerCompat.from(MainActivity.this).notify(0, builder.build());
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

我还通过删除builder.addAction()进行了实验,但是当我点击通知时没有任何作用.如果在不添加操作的情况下单击通知,我们如何引导用户访问特定活动?另外,在任何一种情况下; 除非我手动滑动删除通知,否则我无法解除通知.

android push-notification android-layout android-notifications

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

mySQL 外键和内关系的区别

谁能向我解释一下中所示的 mysql 中的内部关系和外键约束之间的区别?当我学习 Microsoft SQL Server 管理工具中的基本数据库设计时,这种内部关系概念对我来说是新的,并且在我的 Web 应用程序中出现外键错误。此外,如果我对数据库进行逆向工程以获得可视模式,则如果我仅使用内部关系,则表之间的连接不可见。需要外键来生成这些连接。

mysql database-design foreign-keys relational-database sql-server-2008

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

JavaScript Node js`res.send不是函数错误`

var url = require('url');
var http = require('http');

http.createServer(function (req, res) {
  var url_parts = url.parse(req.url, true);
  var q = url_parts.query;
  console.log(q.query);

   res.setHeader('Content-Type', 'application/json');
   res.send(JSON.stringify({ a: 1 }));

console.log(q.query);
}).listen(8080);
Run Code Online (Sandbox Code Playgroud)

使用此代码我能够收到请求,但我无法回复它.表明TypeError: res.send is not a function

javascript http node.js

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