Как повернуть 4 (или более) изображения, исчезая между каждым?

Каждый раз, когда вы добавляете объект в ArrayList, убедитесь, что вы добавили новый объект, а не уже использованный объект. Случается, что при добавлении одной и той же копии объекта этот объект добавляется в разные позиции в ArrayList. И когда вы вносите изменения в один, поскольку одна и та же копия добавляется снова и снова, все копии становятся затронутыми. Например, предположим, что у вас есть ArrayList:

ArrayList<Card> list = new ArrayList<Card>();
Card c = new Card();

Теперь, если вы добавите эту карту c в список, она не будет добавлена ​​никаких проблем. Он будет сохранен в месте 0. Но когда вы сохраните ту же Карту c в списке, она будет сохранена в местоположении 1. Так что помните, что вы добавили один и тот же 1 объект в два разных местоположения в списке. Теперь, если вы внесете изменения в объект Card c, объекты в списке в местах 0 и 1 также отражают это изменение, потому что они являются одним и тем же объектом.

Одним из решений было бы сделать конструктор класса Card, который принимает другой объект карты. Затем в этом конструкторе вы можете установить такие свойства следующим образом:

public Card(Card c){
this.property1 = c.getProperty1();
this.property2 = c.getProperty2(); 
... //add all the properties that you have in this class Card this way
}

И скажем, что у вас есть одна и та же 1 копия Карты, поэтому во время добавления нового объекта вы можете сделать это:

list.add(new Card(nameOfTheCardObjectThatYouWantADifferentCopyOf));
14
задан Darryl Hein 13 June 2011 в 15:13
поделиться

4 ответа

Я настоятельно рекомендовал бы плагин Цикла jQuery. Это может сделать больше, чем Вы ищете в этом случае, но это хорошо структурировало и легкий установить. Существует также легкая версия под названием Цикл jQuery, Облегченный, который просто поддерживает, исчезают переходы.

21
ответ дан 1 December 2019 в 09:34
поделиться

Можно использовать a div и img, как так:

<div id="featureImgContainer">
    <img src="/images/image-1.jpg" id="featureImg" />
</div>

В Вашем JavaScript делают что-то вроде этого (псевдоjQuery):

function rotateImage(newImage) {
    var oldImage = $("#featureImg").image();

    $("#featureImgContainer").css({backgroundImage: "url('" + oldImage + "')"}); // TODO Escape URL

    $("#featureImg").image(newImage).opacity(0).fadeIn();
}

В основном мы делаем divфон "старое" изображение, и img новый. Мы устанавливаем img к 0 непрозрачности, и постепенно появляются он, таким образом, появляется, как будто старое изображение исчезает в новое. После исчезновения в, div больше не показывается.

Заботьтесь для установки CSS соответственно для установки ширины/высоты div и фоновое положение в соответствующих случаях.

5
ответ дан 1 December 2019 в 09:34
поделиться

можно остаться с ядром jQuery и иметь цикл, поднимают z-индекс..

это может быть сделано очень простым способом...

1
ответ дан 1 December 2019 в 09:34
поделиться

Я также нашел это расширение jQuery: http://www.linein.org/blog/2008/01/10/roate-image-using-jquery-with-plugin/

Это, кажется, делает это вполне приятно, хотя много кода для не слишком много.

Править: Я также нашел Ползунок Nivo, который я использовал довольно часто, и работал вполне хорошо. Это также имеет способность иметь "навигацию" и предыдущие/следующие кнопки. Довольно удобный.

1
ответ дан 1 December 2019 в 09:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: