第一次用Java开发,第一次开发Android,所以这是一个相当新的问题.
我目前有这个代码:
public void onBtnClicked(View v){
/** Handles button navigation */
@SuppressWarnings("rawtypes")
Class c;
int viewId = v.getId();
switch (viewId) {
case R.id.btnNewTourny :
c = NewTourny.class;
break;
case R.id.btnTeamEditor :
c = EditTeam.class;
break;
case R.id.btnCatEditor :
c = EditCat.class;
break;
case R.id.btnLoadTourny :
c = EditCat.class;
break;
case R.id.btnNewCategory :
c = NewCat.class;
break;
default :
c = Main.class;
}
Intent myIntent = new Intent(v.getContext(), c);
startActivityForResult(myIntent, 0);
}
Run Code Online (Sandbox Code Playgroud)
简短的问题:
什么是的.class属性来完成,f.ex. 在' c = NewTourny .class …
我在javascript中编写了一个地图生成器,使用我在各个地方找到的经典perlin噪声脚本来获得我想要的功能.我一直在使用chrome,并且没有遇到任何地图问题.但是,当我在firefox中测试它时,速度非常慢 - 几乎挂起了我的系统.它在夜间构建方面表现更好,但仍然比Chrome慢30倍.
你可以在这里找到它的测试页面:http: //jsfiddle.net/7Gq3s/
这是html代码:
<!DOCTYPE html>
<html>
<head>
<title>PerlinMapTest</title>
</head>
<body>
<canvas id="map" width="100" height="100" style="border: 1px solid red">My Canvas</canvas>
<script src="//code.jquery.com/jquery-2.0.0.min.js"></script>
<script>
$(document).ready(function(){
//Log time in two ways
var startTime = new Date().getTime();
console.time("Map generated in: ");
var canvas = $("#map")[0];
var ctx = canvas.getContext("2d");
var id = ctx.createImageData(canvas.width, canvas.height);
var noiseMap = new PerlinNoise(500);
var startx = 0;
var starty = 0;
var value = 0;
for(var i = startx; i < canvas.width; i++){ …Run Code Online (Sandbox Code Playgroud) 我正在编写一个函数,逐个像素地将图像绘制到画布元素.我注意到有一点,功能突然变得比以前更长 - 特别是从338x338像素画布到339x339像素画布.
将类似的函数放入jsfiddle,我得到相同的结果.while循环处理一个338x338的数组需要大约.6-7秒,而339x339的阵列大约需要6到9秒.24-25秒.
这种情况发生在Chrome上.在Firefox中,两者都需要大约.16秒
这是小提琴:http: //jsfiddle.net/8pb89/5/
代码如下所示:
var ary1 = [];
var ary2 = [];
var mapData = {};
var colorMatrix = {};
for (var i = 0; i < (338 * 338); i++) {
ary1.push([i, i + 2]);
}
for (var i = 0; i < (339 * 339); i++) {
ary2.push([i, i + 2]);
}
//Light operation
function test(i, j) {
return Math.floor((i * j + i + j) / j);
}
//Heavy operation on …Run Code Online (Sandbox Code Playgroud) 假设我有两个函数,其中一个扩展另一个函数.
/**
* @abstract
* @param {Object} settings
* @param {Number} settings.x
* @param {Number} settings.y
*
*/
function Base(settings) {
this.x = settings.x;
this.y = settings.y;
}
/**
* @extends Base
*/
function Foo(settings) {
Base.call(this, settings);
}
Run Code Online (Sandbox Code Playgroud)
这两个函数分为两个单独的文件.有什么方法可以从Base我的Foo函数中的函数继承参数文档,还是我必须编写两次文档?
我试图做settings一个@typedef这样的:
/**
* @typedef {Object} BaseSettings
* @property {Number} x
* @property {Number} y
*
*/
/**
* @extends Base
* @param {BaseSettings} settings
*/
function Foo(settings) {
Base.call(this, settings);
}
Run Code Online (Sandbox Code Playgroud)
但这只是链接到全局类型定义,我希望参数记录在与该函数相同的页面上.但是,如果不编写文档两次,这是否可能?
这是获得精确50/50机会的正确功能:
return Math.random() < 0.5;
Run Code Online (Sandbox Code Playgroud)
VS
return Math.random() <= 0.5;
Run Code Online (Sandbox Code Playgroud) 如果我有以下代码:
var obj = {
x: 34,
init: function() {
alert(this.x);
alert(obj.x)
}
};
Run Code Online (Sandbox Code Playgroud)
两个警报都显示 34。但是有什么区别,一个比另一个更好吗?
我在jsperf中进行了测试,看起来速度this更快一些,但我仍然不明白这两个版本的内部工作原理。
http://jsperf.com/name-vs-this-in-obj
我正在使用一个函数来检查是否填写了必填字段.我有这两个功能,应该做同样的事情,但第一个没有.在遇到退货后,javascript不应该停止执行代码吗?
此函数返回true:
//Checks if various stages are ready
function trnReady(area) {
switch (area)
{
case 'settings':
$('input.required').each(function(){
if($(this).val() == '')
{
return false;
}
});
break;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
虽然这个返回false:
//Checks if various stages are ready
function trnReady(area) {
var r = true;
switch (area)
{
case 'settings':
$('input.required').each(function(){
if($(this).val() == '')
{
r = false;
}
});
break;
}
return r;
}
Run Code Online (Sandbox Code Playgroud)
我以为第一次返回会停止执行代码?我想知道它是否与范围有关?
我正在努力创建一个将一个范围内插到另一个范围的函数。我已经有一个正常的线性插值功能,但是越来越“弯曲”的插值功能让我很困惑。
F.ex. 我想的范围内内插[0,100]来[0,1000]在一个方式,所以目标值接近0是更有可能比目标值接近1000(或反之亦然)。
我使用的一种方法是使用对数插值,它有一些令人讨厌的缺点:
函数logPol(value,s1,s2,t1,t2){
Run Code Online (Sandbox Code Playgroud)var f = (value - s1) / ((value - s1) + (s2 - value)); var add = 0; if(t1 <= 0 || t2 <= 0) { add = t1 >= t2? 2 * Math.abs(t2) + 1 : 2 * Math.abs(t1) + 1; t1 += add; t2 += add; } var interpolated = Math.pow(t2,f) * Math.pow(t1, 1-f) - add; return interpolated;};
我已经阅读了很多有关二次方程的文章,以为可以解决我的问题,但从未以有效的解决方案告终。如果需要进一步说明,请告诉我。
安卓编程新手。
我有一个布局 XML,我想向其中添加一个列表(包含来自数据库的项目),格式为表格。
这是代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.edit_cat);
DatabaseHandler db = new DatabaseHandler(this);
List<Category> allCategories = db.getAllCategories();
//Get the main layout from XML
LinearLayout mainLayout = (LinearLayout) findViewById(R.id.edit_cat);
//Create table layout for the categories
TableLayout catList = new TableLayout(this);
//Iterate the categories, and organize in tables
for (Category category : allCategories) {
TableRow tr = new TableRow(this);
//Display category name
TextView name = new TextView(this);
name.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
name.setText(category.getName());
//Display category type
TextView type = new …Run Code Online (Sandbox Code Playgroud) 以下示例定义了一个foo类,它构造一个bar类,并将其存储为属性$foo->bar.在bar类中,是否可以引用'false'父类,并使用它的函数?
class bar
{
public function test_false_parent()
{
//Is it possible to access foo->display() from here
{unknown code}::display();
}
}
class foo
{
public $bar;
public function __construct()
{
$this->bar = new bar;
}
public function display()
{
echo "in";
}
}
$foo = new foo;
$foo->bar->test_false_parent();
//Equivalent to $foo->display();
Run Code Online (Sandbox Code Playgroud) javascript ×6
android ×2
class ×2
java ×1
jsdoc ×1
oop ×1
optimization ×1
performance ×1
php ×1
view ×1