آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

ایجاد اسلایدر در برنامه (مهم)فوری

dani  12 سال پیش  12 سال پیش
+1 0

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

 برای این سوال 8 پاسخ وجود دارد.
پاسخ به سوال 
harani  12 سال پیش
+1 0

میتوانید از adapter view flipper استفاده کنید  .

0 0
میتونین بهتر راهنمایین کنین (12 سال پیش)
پاسخ به سوال 
dani  12 سال پیش
0 0

دیتا بیس ساختم ... ادرس عکس هم توش زدم .تو فایل پی اچ پی هم ستون دیتابیس تعریف کردم مثل ستون لوگو ... حالا باید چیکار کنم که  تو برنامم نمایش بده ...یه چند تا کد نوشتم ولی هر کاری کردم درست نشد ..ایا راه بهتری دارین؟

0 0
کسی هست کمک کنه (12 سال پیش)
پاسخ به سوال 
sadeghbarout  12 سال پیش
0 0

دوست عزیز به نظرم خیلی مساله رو پیچیده کردی . من نفهمیدم کجا رو مشکل داری! الان توی لود کردن اون عکس های زیریش مشکل داری؟ اونا قراره از اینترنت دانلود بشن درسته؟ این کار ترکیب 2 تا از آموزشهاست. اونا رو ببینی 100% خودت میتونی بسازیش.

پروژه اسلایدر تصویر

ListView و تصاویر پرحجم آنلاین!

درضمن نمیشه که عکس دانلود نشه ولی نشون داده بشه! ولی میشه یه عکس با کیفیت پایین تر و سایز کوچیکتری رو ابتدا دانلود کنی و نشون بدی. بعد اگه کاربر خواست، اون عکس با کیفیت رو دانلود کنه

0 0
اره می خوام اون تو تا عکس نمایش پیدا کنن و از اینرنت بگیرن مقل اون لوگو که داره هر ایتم یه لوگو و عکس داره من تونستم لوگو رو نمایش بدم یعنی تو دیتا بیس وقتی یه خبر میزارم و اونجا جای ادرس لوگو رو میزارم و نمایش پیدا میکنه ...حالا می خوام هر ایتم 4 تا عکس هم داشته باشه حالا چه جوری اون عکس ها رو مثل لوگو نمایش بدم ...که از دیتا بیس بخونه (12 سال پیش)
0 0
آپلود کنم کسی می تونه ببینه مشکل از کجاست؟ (12 سال پیش)
0 0
شما اون دوتا آموزشی که گفتم رو دیدی؟ الان عکسا دانلود میشن و همینجوری هم میتونی نمایششون بدی فقط توی imageviewer نمیتونی نشونشون بدی؟ (12 سال پیش)
0 0
ن اصلا نمی تونم کدش رو بنویسم ..اخه تو دانلود منجیر که ساخت فقط کد مربوط به لوگو داره تا تغیرش می خوام بدم ب هم می خوره من می خوام جز لوگو 4 تا عکس دیگه هم همراه لوگو نمایش پیدا کنه ... حالا نمی دونم چه کدی باید بنویسم (12 سال پیش)
0 0
اپلود کنم میتونین درست کنین؟ (12 سال پیش)
پاسخ به سوال 
محمد حسین زاده  12 سال پیش
+1 0

کلاس StrucApplication رو به صورت زیر در نظر بگیر

 public class StrucApplication {

public String name;
public String tarikh;
public String logoUrl;
public float ratingValue;

public String author;
public int votes;
public long filesize;
public String versionName;
public int installs;
public String description;
public String phoneNumber;
public String email;
public String file;

public String img1_small;
public String img2_small;
public String img3_small;
public String img4_small;

public String img1_large;
public String img2_large;
public String img3_large;
public String img4_large;

}

 

0 0
تو دیتابیس بعد باید چی بزارم ؟ (12 سال پیش)
+1 0
8 تا فیلد- 4تاش آدرس عکس کوچیکتر و 4 تاش هم آدرس عکس بزرگ (12 سال پیش)
پاسخ به سوال 
محمد حسین زاده  12 سال پیش
+2 0

تابعی برای ست کردن عکس ایجاد کن

 
private void setImage(ImageView iv, String filePath) {
String filename = HelperString.getFileName(filePath);
final File imageFile = new File(G.DIR_FINAL + "/" + filename);
if (!imageFile.exists()) {
iv.setImageBitmap(null);

DownloadManager.addToDownloadList(filePath, iv);
}

BitmapFactory.Options options = new BitmapFactory.Options();
// options.inSampleSize = 8;
Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath(),
options);
iv.setImageBitmap(bitmap);

}


0 0
این تابع رو کدوم فایل جاوا بزارم؟؟؟ (12 سال پیش)
+1 0
تا اکتیویتی 4 که اومدی - تغییراتت برای اکتیویتی 4 هستش که برای ارسال به اکتیویتی 5 آماده بشه (تو اکتیویتی 4) (12 سال پیش)
0 0
نمیزاره اخه یع تابع قسمت لوگو هم تو همین هست . (12 سال پیش)
+1 0
تابع رو دقیقا بعد از کد متد onCreate تعریف کن. این تابع رو گذاشتم برای حذف کد تکراری (کارایی متد ها همینه) شما میتونی به تعداد ImageView ها کدت رو تکرار کنی (12 سال پیش)
0 0
بازم ارور میده ..کد تکراریه می تونی کد کامل اکتیویتی 4 رو بزاری ؟ (12 سال پیش)
پاسخ به سوال 
محمد حسین زاده  12 سال پیش
+1 0

متد onCreate :

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

txtName = (TextView) findViewById(R.id.textName);
textAuthor = (TextView) findViewById(R.id.textAuthor);
textVotes = (TextView) findViewById(R.id.textVotes);
rating = (RatingBar) findViewById(R.id.rating);
imgLogo = (ImageView) findViewById(R.id.imgLogo);
butInstall = (Button) findViewById(R.id.butInstall);
texttarikh = (TextView) findViewById(R.id.texttarikh);

TextFilesize = (TextView) findViewById(R.id.TextFilesize);
textVersionName = (TextView) findViewById(R.id.textVersionName);
txtInstalls = (TextView) findViewById(R.id.txtInstalls);
TextDescription = (TextView) findViewById(R.id.TextDescription);
TextPhoneNumber = (TextView) findViewById(R.id.TextPhoneNumber);
TextEmail = (TextView) findViewById(R.id.TextEmail);

txtName.setText(G.selectedApplication.name);
textAuthor.setText(G.selectedApplication.author);
textVotes.setText(G.selectedApplication.votes + "");
rating.setRating(G.selectedApplication.ratingValue);
// imgLogo

texttarikh.setText(G.selectedApplication.tarikh + " "
+ getString(R.string.starqeshm_4_tooman));
TextFilesize.setText(getString(R.string.starqeshm_4_filesize) + " "
+ convertKBtoMB(G.selectedApplication.filesize) + "MB");
textVersionName.setText(getString(R.string.starqeshm_4_version) + " "
+ G.selectedApplication.versionName);
txtInstalls.setText(getString(R.string.starqeshm_4_installs) + " "
+ G.selectedApplication.installs + "");
TextDescription.setText(G.selectedApplication.description);
TextPhoneNumber.setText(getString(R.string.starqeshm_4_phone_number)
+ " " + G.selectedApplication.phoneNumber);
TextEmail.setText(getString(R.string.starqeshm_4_email) + " "
+ G.selectedApplication.email);

Button butInstall = (Button) findViewById(R.id.butInstall);
butInstall.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Intent i = new Intent();
i.setAction(android.content.Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_TEXT, txtName.getText().toString()
+ "\n" + TextDescription.getText().toString() + "\n"
+ texttarikh.getText().toString());
i.putExtra(android.content.Intent.EXTRA_SUBJECT, "ستاره قشم");
arg0.getContext().startActivity(
i.createChooser(i, "به اشتراک بزارید"));

}
});

imgto4 = (ImageView) findViewById(R.id.imgto4);
imgto3 = (ImageView) findViewById(R.id.imgto3);
imgto2 = (ImageView) findViewById(R.id.imgto2);
imgto1 = (ImageView) findViewById(R.id.imgto1);

setImage(imgLogo, G.selectedApplication.logoUrl);
setImage(imgto1, G.selectedApplication.img1_small);
setImage(imgto2, G.selectedApplication.img2_small);
setImage(imgto3, G.selectedApplication.img3_small);
setImage(imgto4, G.selectedApplication.img4_small);

imgto1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "First image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto2.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Second image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto3.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Third image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto4.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Fourth image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

}

 

پاسخ به سوال 
محمد حسین زاده  12 سال پیش
+2 0

تا اینجای کار عکس ها رو از دیتا بیس خوندی . تغییرات مورد نیاز برای کلاس StrucApplication رو هم باید تو مراحل خوندن دیتا از سرور اعمال کنی

Activity بعدی هم عینا همین اکتیویتی 4 هستش با این تفاوت که فقط حاوی 1 کنترل ImageView هست و صرفا عکس بزرگ رو نشون میده

بجای Toast که من نوشتم شما 2 تا پارامتر ارسال میکنی : اولیش شماره عکس دومیش هم اطلاعات رکورد.

پاسخ به سوال 
محمد حسین زاده  12 سال پیش
+2 0

کد کامل اکتیویتی

 package ir.starqeshm.starqeshm;

import java.io.File;

import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;

public class starqeshm4 extends EnhancedActivity {

private TextView txtName;
private TextView textAuthor;
private TextView textVotes;
private RatingBar rating;
private ImageView imgLogo;
private Button butInstall;
private TextView texttarikh;
private TextView TextFilesize;
private TextView textVersionName;
private TextView txtInstalls;
private TextView TextDescription;
private TextView TextPhoneNumber;
private TextView TextEmail;

private ImageView imgto1;
private ImageView imgto2;
private ImageView imgto3;
private ImageView imgto4;

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

txtName = (TextView) findViewById(R.id.textName);
textAuthor = (TextView) findViewById(R.id.textAuthor);
textVotes = (TextView) findViewById(R.id.textVotes);
rating = (RatingBar) findViewById(R.id.rating);
imgLogo = (ImageView) findViewById(R.id.imgLogo);
butInstall = (Button) findViewById(R.id.butInstall);
texttarikh = (TextView) findViewById(R.id.texttarikh);

TextFilesize = (TextView) findViewById(R.id.TextFilesize);
textVersionName = (TextView) findViewById(R.id.textVersionName);
txtInstalls = (TextView) findViewById(R.id.txtInstalls);
TextDescription = (TextView) findViewById(R.id.TextDescription);
TextPhoneNumber = (TextView) findViewById(R.id.TextPhoneNumber);
TextEmail = (TextView) findViewById(R.id.TextEmail);

txtName.setText(G.selectedApplication.name);
textAuthor.setText(G.selectedApplication.author);
textVotes.setText(G.selectedApplication.votes + "");
rating.setRating(G.selectedApplication.ratingValue);
// imgLogo

texttarikh.setText(G.selectedApplication.tarikh + " "
+ getString(R.string.starqeshm_4_tooman));
TextFilesize.setText(getString(R.string.starqeshm_4_filesize) + " "
+ convertKBtoMB(G.selectedApplication.filesize) + "MB");
textVersionName.setText(getString(R.string.starqeshm_4_version) + " "
+ G.selectedApplication.versionName);
txtInstalls.setText(getString(R.string.starqeshm_4_installs) + " "
+ G.selectedApplication.installs + "");
TextDescription.setText(G.selectedApplication.description);
TextPhoneNumber.setText(getString(R.string.starqeshm_4_phone_number)
+ " " + G.selectedApplication.phoneNumber);
TextEmail.setText(getString(R.string.starqeshm_4_email) + " "
+ G.selectedApplication.email);

Button butInstall = (Button) findViewById(R.id.butInstall);
butInstall.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Intent i = new Intent();
i.setAction(android.content.Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_TEXT, txtName.getText().toString()
+ "\n" + TextDescription.getText().toString() + "\n"
+ texttarikh.getText().toString());
i.putExtra(android.content.Intent.EXTRA_SUBJECT, "ستاره قشم");
arg0.getContext().startActivity(
i.createChooser(i, "به اشتراک بزارید"));

}
});

imgto4 = (ImageView) findViewById(R.id.imgto4);
imgto3 = (ImageView) findViewById(R.id.imgto3);
imgto2 = (ImageView) findViewById(R.id.imgto2);
imgto1 = (ImageView) findViewById(R.id.imgto1);

setImage(imgLogo, G.selectedApplication.logoUrl);
setImage(imgto1, G.selectedApplication.img1_small);
setImage(imgto2, G.selectedApplication.img2_small);
setImage(imgto3, G.selectedApplication.img3_small);
setImage(imgto4, G.selectedApplication.img4_small);

imgto1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "First image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto2.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Second image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto3.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Third image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

imgto4.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(G.context, "Fourth image clicked ...",
Toast.LENGTH_SHORT).show();
}
});

}

private void setImage(ImageView iv, String filePath) {
String filename = HelperString.getFileName(filePath);
final File imageFile = new File(G.DIR_FINAL + "/" + filename);
if (!imageFile.exists()) {
iv.setImageBitmap(null);

DownloadManager.addToDownloadList(filePath, iv);
}

BitmapFactory.Options options = new BitmapFactory.Options();
// options.inSampleSize = 8;
Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath(),
options);
iv.setImageBitmap(bitmap);

}

// options.inSampleSize = 8;

private float convertKBtoMB(long value) {
return (value / 1024);
}

}

 

0 0
ممنون... تو کلاس G هم اسم همهستون دیتابیس باید بزارم؟ (12 سال پیش)
0 0
تو فایل php همینطور؟ (12 سال پیش)
+1 0
تو G اینو داری public static StrucApplication selectedApplication; پس نیازی نیست ولی php باید خروجی بده (12 سال پیش)
0 0
تو فایل پی اپ پی ستون دیتابیس رو تعریف کردم .نام ستون دیتابیس هم تغییر دادم .. ولی تا به اکتیویتی 4 بره کرش میکنه (12 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .