PDA

View Full Version : چند مشکل لطفا جواب بدید



shs1377
سه شنبه 28 آبان 1392, 20:47 عصر
سلام دوستان من چند تا مشکل دارم لطفا راهنمایی کنید

1 : چطوری میشه با نگاه داشتن طولانی دکمه back از برنامه خارج شد؟

2 : در گرید ویو چه دستوری برای خروج از برنامه باید استفاده کرد

3 : در گرید ویو من چند دکمه دارم که روی هر کدام که لمس میکنی ( هنگام فشار دادن) اطراف دکمه ها آبی میشه چطور میتونم این رنگ پیش فرض رو عوض کنم

4 : آیا با زبان جاوا میتونم بازی اندروید بسازم؟ با چه برنامه ای؟

لطفا جواب بدید

mohsen22
پنج شنبه 30 آبان 1392, 00:34 صبح
ببخشید دو تا سوال دارم
1- مسیری که دیتابس ذخیره میشه ( هم در گوشی هم در پی سی) کجاست؟
چگونه می توان بسورت دستی دیتا ها رو در دیتابیس وارد کرد(دیتا بس رو از طریق کامپیوتر پر کرد ؟)
مرسی
http://barnamenevis.org/showthread.php?401729-%D8%A7%D8%B6%D8%A7%D9%81%D9%87-%DA%A9%D8%B1%D8%AF%D9%86-%D8%AA%D8%A7%D9%BE%DB%8C%DA%A9-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D9%88%DA%86%DA%A9-%D9%88-%D9%85%D9%81%D9%8A%D8%AF-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF&p=1916566&viewfull=1#post1916566

rubiks.kde
پنج شنبه 30 آبان 1392, 01:24 صبح
ببخشید دو تا سوال دارم
1- مسیری که دیتابس ذخیره میشه ( هم در گوشی هم در پی سی) کجاست؟
چگونه می توان بسورت دستی دیتا ها رو در دیتابیس وارد کرد(دیتا بس رو از طریق کامپیوتر پر کرد ؟)
مرسی
http://barnamenevis.org/showthread.php?401729-%D8%A7%D8%B6%D8%A7%D9%81%D9%87-%DA%A9%D8%B1%D8%AF%D9%86-%D8%AA%D8%A7%D9%BE%DB%8C%DA%A9-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D9%88%DA%86%DA%A9-%D9%88-%D9%85%D9%81%D9%8A%D8%AF-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF&p=1916566&viewfull=1#post1916566

دیتا بیس توی مسیر نصب برنامه data/data/package.name/databases ذخیره میشه.
برای استفاده از پایگاه داده آماده در آندورید اول باید اون رو توی assets قرار بدی و در زمان اجرا اون رو به مسیر گفته شده در بالا کپی کنید.
من قبلا توی یکی از پروژه هام چنین کاری کرده بودم و اینم کدش

public class DataBaseHelper extends SQLiteOpenHelper {

private static String TAG = "DataBaseHelper";
private static String DB_PATH = "";
private static String DB_NAME ="test.db";
private final Context mContext;
private SQLiteDatabase mDataBase;

public DataBaseHelper(Context context) {
super(context, DB_NAME, null, 1);

this.mContext = context;
DB_PATH = "/data/data/" + context.getPackageName() + "/databases/";
createDataBase();
}

private void createDataBase()
{
try{
boolean mDataBaseExist = checkDataBase();
if(!mDataBaseExist)
{
this.getReadableDatabase();
this.close();
copyDataBase();
Log.e(TAG, "createDatabase database created");
}
}catch (Exception e) {
}
}

private boolean checkDataBase()
{
File dbFile = new File(DB_PATH + DB_NAME);
Log.i(TAG, Boolean.toString(dbFile.exists()));
return dbFile.exists();
}

private void copyDataBase(){

try {

InputStream mInput = mContext.getAssets().open("data/help.dat");
String outFileName = DB_PATH + DB_NAME;
OutputStream mOutput = new FileOutputStream(outFileName);
byte[] mBuffer = new byte[1024];
int mLength;
while ((mLength = mInput.read(mBuffer))>0){
mOutput.write(mBuffer, 0, mLength);
}
mOutput.flush();
mOutput.close();
mInput.close();

} catch (Exception e) {

}
}

public ArrayList<ObjectItem> GetTableContent(){

ArrayList<ObjectItem> items = new ArrayList<ObjectItem>();

if(open()){

Cursor cursor = mDataBase.rawQuery("select * from ContentTable", null);
if(!cursor.moveToFirst()){
close();
return items;
}

do {

ObjectItem item = new ObjectItem();
item.setId(cursor.getInt(0));
item.setTitle(cursor.getString(1));
item.setPage(cursor.getInt(2));
items.add(item);

} while (cursor.moveToNext());
close();
return items;
}
return items;
}

private boolean open() throws SQLException
{
String mPath = DB_PATH + DB_NAME;
mDataBase = SQLiteDatabase.openDatabase(mPath, null, SQLiteDatabase.CREATE_IF_NECESSARY);
return mDataBase != null;
}

@Override
public synchronized void close()
{
if(mDataBase != null)
mDataBase.close();
super.close();
}

@Override
public void onCreate(SQLiteDatabase db) {
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}


فایل help.dat همون پایگاه داده آماده من بود

mohsen22
پنج شنبه 30 آبان 1392, 01:37 صبح
ببخشید تو ویندوز چجوری بازش کم.... با چه نرم افزاری؟؟؟

abbasalim
پنج شنبه 30 آبان 1392, 11:34 صبح
ببخشید تو ویندوز چجوری بازش کم.... با چه نرم افزاری؟؟؟


نرم افزار که زیاده sqliteman استفاده میکنم هم روی لینوکس هم ویندوز قابل اجراس

shs1377
شنبه 02 آذر 1392, 00:34 صبح
دوستان لطفا سوالات من رو هم جواب بدید

rubiks.kde
شنبه 02 آذر 1392, 01:24 صبح
سلام دوستان من چند تا مشکل دارم لطفا راهنمایی کنید

1 : چطوری میشه با نگاه داشتن طولانی دکمه back از برنامه خارج شد؟

2 : در گرید ویو چه دستوری برای خروج از برنامه باید استفاده کرد

3 : در گرید ویو من چند دکمه دارم که روی هر کدام که لمس میکنی ( هنگام فشار دادن) اطراف دکمه ها آبی میشه چطور میتونم این رنگ پیش فرض رو عوض کنم

4 : آیا با زبان جاوا میتونم بازی اندروید بسازم؟ با چه برنامه ای؟

لطفا جواب بدید


سوال اول : میتونید از کد زیر استفاده کنید

@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK)
{
Log.i("onKeyLongPress", "KEYCODE_BACK");
}
return super.onKeyLongPress(keyCode, event);
}

البته روش های دیگه ایی هم داره که این راحت تره مثلا استفاده از توابع onKeyDown و onKeyUp

سوال دوم :یکم سوالتون گنگه ، مگه finish کار نمیکنه؟حتما میخواهید زمانی که روی یکی از آیتم های گرید ویو کلیک شد برنامه خارج بشه ؟ پس از finish استفاده کنید.

سوال سوم : اگه منظورتون استایل دکمه هست که به راحتی با عکس یا drawable براش یه استایل جدید بسازید ( این مورد هم به اندازه کافی مثال داره)
مثلا اگه این مورد رو به عنوان drawable به پس زمینه دکمه بدید یه استایل جدید میگیره

<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<stroke
android:width="1dp"
android:color="#505050"/>
<corners
android:radius="7dp" />

<padding
android:left="1dp"
android:right="1dp"
android:top="1dp"
android:bottom="1dp"/>

<solid android:color="#505050"/>

</shape>

سوال چهارم :بله میتونید این کار رو انجام بدید . موتورهای بازی سازی زیادی هم وجود داره که میتونید استفاده کنید

آموزش (http://www.kilobolt.com/game-development-tutorial.html)

mohsen22
یک شنبه 03 آذر 1392, 09:33 صبح
دیتا بیس توی مسیر نصب برنامه data/data/package.name/databases ذخیره میشه.
برای استفاده از پایگاه داده آماده در آندورید اول باید اون رو توی assets قرار بدی و در زمان اجرا اون رو به مسیر گفته شده در بالا کپی کنید.
من قبلا توی یکی از پروژه هام چنین کاری کرده بودم و اینم کدش

[JAVA]public class DataBaseHelper extends SQLiteOpenHelper {
.
.
.

فایل help.dat همون پایگاه داده آماده من بود

ممنون دوست من بابت راهنمایی خوبتون
من توابع مورد نیاز رو وارد نموده اما
چهار تا خطا داره :

java: cannot find symbol
symbol: class ObjectItem
location: class tamin.khas.DataBaseHelper


java: cannot find symbol
symbol: class OutputStream
location: class tamin.khas.DataBaseHelper

java: cannot find symbol
symbol: class FileOutputStream
location: class tamin.khas.DataBaseHelper

java: cannot find symbol
symbol: class ObjectItem
location: class tamin.khas.DataBaseHelper

ممنون

shs1377
یک شنبه 03 آذر 1392, 13:27 عصر
با تشکر از شما آقای rubikd.kde سوال دومم هم حل شد:لبخند:

rubiks.kde
یک شنبه 03 آذر 1392, 14:40 عصر
ممنون دوست من بابت راهنمایی خوبتون
من توابع مورد نیاز رو وارد نموده اما
چهار تا خطا داره :

java: cannot find symbol
symbol: class ObjectItem
location: class tamin.khas.DataBaseHelper


java: cannot find symbol
symbol: class OutputStream
location: class tamin.khas.DataBaseHelper

java: cannot find symbol
symbol: class FileOutputStream
location: class tamin.khas.DataBaseHelper

java: cannot find symbol
symbol: class ObjectItem
location: class tamin.khas.DataBaseHelper

ممنون


گفتم این برای پروژه من هست شما تابع GetTableContent() رو کاملا حذف کنید ولی توابع خودتون رو مثل اون بنویسید ابتدا open بعد از استفاده هم close

shs1377
یک شنبه 03 آذر 1392, 16:01 عصر
دوستان توجه کنید

من از گرید ویوی استفاده میکنم که یک عکس در بالا و یک متن در پایین هر آیتمش داره من وقتی روی هر کدوم کلیک میکنم در اطراف هر آیتم رنگ آبی میاد که نشان دهنده کلیک است من منظورم رنگ تم است مثلا وقتی رو یک باتن ساده هم کلیک میکنیم یک رنگ خاص تم نشون داده میشه ( توجه کنید گفتم وقتی هیچ گونه بک گراندی نداره)
حالا چطور میتونم این رنگ رو موقع کلیک رو گرید ویو حذف و یا رنگ و حالتش رو شخصی سازی کنم؟؟
خداکنه کنه منظورم رو فهمیده باشید

shs1377
یک شنبه 03 آذر 1392, 16:23 عصر
لطفا جواب سوالم رو بدید

shs1377
یک شنبه 03 آذر 1392, 22:11 عصر
کسی نبود؟؟؟

shs1377
دوشنبه 04 آذر 1392, 13:11 عصر
نه واقعا کسی نبود؟؟؟:متفکر: